{
  "$defs": {
    "ButlerInfo": {
      "description": "Information about a butler dataset.",
      "properties": {
        "dataset": {
          "$ref": "#/$defs/SerializedDatasetRef"
        },
        "provenance": {
          "$ref": "#/$defs/DatasetProvenance"
        }
      },
      "required": [
        "dataset"
      ],
      "title": "ButlerInfo",
      "type": "object"
    },
    "DatasetProvenance": {
      "description": "Provenance of a single `DatasetRef`.",
      "properties": {
        "extras": {
          "additionalProperties": {
            "additionalProperties": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "integer"
                },
                {
                  "type": "number"
                },
                {
                  "type": "boolean"
                },
                {
                  "format": "uuid",
                  "type": "string"
                }
              ]
            },
            "type": "object"
          },
          "propertyNames": {
            "format": "uuid"
          },
          "title": "Extras",
          "type": "object"
        },
        "inputs": {
          "items": {
            "$ref": "#/$defs/SerializedDatasetRef"
          },
          "title": "Inputs",
          "type": "array"
        },
        "quantum_id": {
          "anyOf": [
            {
              "format": "uuid",
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Quantum Id"
        }
      },
      "title": "DatasetProvenance",
      "type": "object"
    },
    "MetadataValue": {
      "anyOf": [
        {
          "type": "integer"
        },
        {
          "type": "number"
        },
        {
          "type": "string"
        },
        {
          "type": "boolean"
        },
        {
          "type": "null"
        }
      ]
    },
    "SerializedDataCoordinate": {
      "description": "Simplified model for serializing a `DataCoordinate`.",
      "properties": {
        "dataId": {
          "additionalProperties": {
            "anyOf": [
              {
                "type": "integer"
              },
              {
                "type": "string"
              }
            ]
          },
          "title": "Dataid",
          "type": "object"
        },
        "records": {
          "anyOf": [
            {
              "additionalProperties": {
                "$ref": "#/$defs/SerializedDimensionRecord"
              },
              "type": "object"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Records"
        }
      },
      "required": [
        "dataId"
      ],
      "title": "SerializedDataCoordinate",
      "type": "object"
    },
    "SerializedDatasetRef": {
      "description": "Simplified model of a `DatasetRef` suitable for serialization.",
      "properties": {
        "component": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Component"
        },
        "dataId": {
          "anyOf": [
            {
              "$ref": "#/$defs/SerializedDataCoordinate"
            },
            {
              "type": "null"
            }
          ],
          "default": null
        },
        "datasetType": {
          "anyOf": [
            {
              "$ref": "#/$defs/SerializedDatasetType"
            },
            {
              "type": "null"
            }
          ],
          "default": null
        },
        "id": {
          "format": "uuid",
          "title": "Id",
          "type": "string"
        },
        "run": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Run"
        }
      },
      "required": [
        "id"
      ],
      "title": "SerializedDatasetRef",
      "type": "object"
    },
    "SerializedDatasetType": {
      "description": "Simplified model of a `DatasetType` suitable for serialization.",
      "properties": {
        "dimensions": {
          "anyOf": [
            {
              "items": {
                "type": "string"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Dimensions"
        },
        "isCalibration": {
          "default": false,
          "title": "Iscalibration",
          "type": "boolean"
        },
        "name": {
          "title": "Name",
          "type": "string"
        },
        "parentStorageClass": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Parentstorageclass"
        },
        "storageClass": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Storageclass"
        }
      },
      "required": [
        "name"
      ],
      "title": "SerializedDatasetType",
      "type": "object"
    },
    "SerializedDimensionRecord": {
      "description": "Simplified model for serializing a `DimensionRecord`.",
      "examples": [
        {
          "definition": "detector",
          "record": {
            "full_name": "0_01",
            "id": 72,
            "instrument": "HSC",
            "name_in_raft": "01",
            "purpose": "SCIENCE",
            "raft": "0"
          }
        }
      ],
      "properties": {
        "definition": {
          "examples": [
            "exposure"
          ],
          "title": "Name of dimension associated with this record.",
          "type": "string"
        },
        "record": {
          "additionalProperties": {
            "anyOf": [
              {
                "type": "boolean"
              },
              {
                "type": "integer"
              },
              {
                "type": "number"
              },
              {
                "type": "string"
              },
              {
                "$ref": "#/$defs/Timespan"
              },
              {
                "type": "null"
              }
            ]
          },
          "examples": [
            {
              "definition": "exposure",
              "record": {
                "exposure": 2021050300044,
                "instrument": "LATISS",
                "obs_id": "AT_O_20210503_00044"
              }
            }
          ],
          "title": "Dimension record keys and values.",
          "type": "object"
        }
      },
      "required": [
        "definition",
        "record"
      ],
      "title": "SerializedDimensionRecord",
      "type": "object"
    },
    "Timespan": {
      "description": "A [begin, end) TAI timespan with bounds as integer nanoseconds since 1970-01-01 00:00:00.",
      "properties": {
        "nsec": {
          "maxItems": 2,
          "minItems": 2,
          "prefixItems": [
            {
              "type": "integer"
            },
            {
              "type": "integer"
            }
          ],
          "title": "Nsec",
          "type": "array"
        }
      },
      "required": [
        "nsec"
      ],
      "title": "Timespan",
      "type": "object"
    }
  },
  "$id": "https://images.lsst.io/schemas/observation_summary_stats-1.0.0",
  "description": "Various statistics obtained from a single observation.",
  "properties": {
    "astromOffsetMean": {
      "default": NaN,
      "description": "Astrometry match offset mean.",
      "title": "Astromoffsetmean",
      "type": "number"
    },
    "astromOffsetStd": {
      "default": NaN,
      "description": "Astrometry match offset stddev.",
      "title": "Astromoffsetstd",
      "type": "number"
    },
    "butler_info": {
      "anyOf": [
        {
          "$ref": "#/$defs/ButlerInfo"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Information about the butler dataset backed by this file."
    },
    "centroidDiffShapeletsVsSlotMedian": {
      "default": NaN,
      "description": "Median centroid difference (sqrt((slot_x - shapelet_x)**2 + (slot_y - shapelet_y)**2)) for sources used in the shapelet decomposition (pixels).",
      "title": "Centroiddiffshapeletsvsslotmedian",
      "type": "number"
    },
    "dec": {
      "default": NaN,
      "description": "Bounding box center Declination (degrees).",
      "title": "Dec",
      "type": "number"
    },
    "decCorners": {
      "description": "Declination of bounding box corners (degrees).",
      "maxItems": 4,
      "minItems": 4,
      "prefixItems": [
        {
          "type": "number"
        },
        {
          "type": "number"
        },
        {
          "type": "number"
        },
        {
          "type": "number"
        }
      ],
      "title": "Deccorners",
      "type": "array"
    },
    "effTime": {
      "default": NaN,
      "description": "Effective exposure time calculated from psfSigma, skyBg, and zeroPoint (seconds).",
      "title": "Efftime",
      "type": "number"
    },
    "effTimePsfSigmaScale": {
      "default": NaN,
      "description": "PSF scaling of the effective exposure time.",
      "title": "Efftimepsfsigmascale",
      "type": "number"
    },
    "effTimeSkyBgScale": {
      "default": NaN,
      "description": "Sky background scaling of the effective exposure time.",
      "title": "Efftimeskybgscale",
      "type": "number"
    },
    "effTimeZeroPointScale": {
      "default": NaN,
      "description": "Zeropoint scaling of the effective exposure time.",
      "title": "Efftimezeropointscale",
      "type": "number"
    },
    "expTime": {
      "default": NaN,
      "description": "Exposure time of the exposure (seconds).",
      "title": "Exptime",
      "type": "number"
    },
    "indirect": {
      "description": "Serialized nested objects that may be saved or read more than once.",
      "items": {},
      "title": "Indirect",
      "type": "array"
    },
    "magLim": {
      "default": NaN,
      "description": "Magnitude limit at fixed SNR (default SNR=5) calculated from psfSigma, skyBg, zeroPoint, and readNoise.",
      "title": "Maglim",
      "type": "number"
    },
    "maxDistToNearestPsf": {
      "default": NaN,
      "description": "Maximum distance of an unmasked pixel to its nearest model psf star (pixels).",
      "title": "Maxdisttonearestpsf",
      "type": "number"
    },
    "meanVar": {
      "default": NaN,
      "description": "Mean variance of the weight plane (ADU**2).",
      "title": "Meanvar",
      "type": "number"
    },
    "metadata": {
      "additionalProperties": {
        "$ref": "#/$defs/MetadataValue"
      },
      "description": "Additional unstructured metadata.",
      "title": "Metadata",
      "type": "object"
    },
    "min_read_version": {
      "default": 1,
      "description": "Smallest reader major that can interpret this tree.",
      "title": "Min Read Version",
      "type": "integer"
    },
    "nPsfStar": {
      "default": 0,
      "description": "Number of stars used for psf model.",
      "title": "Npsfstar",
      "type": "integer"
    },
    "nShapeletsStar": {
      "default": 0,
      "description": "Number of sources used in the shapelet decomposition.",
      "title": "Nshapeletsstar",
      "type": "integer"
    },
    "pixelScale": {
      "default": NaN,
      "description": "Measured detector pixel scale (arcsec/pixel).",
      "title": "Pixelscale",
      "type": "number"
    },
    "psfAdaptiveIncludeThresholdMultiplier": {
      "default": NaN,
      "description": "Threshold multiplier used in the adaptive threshold detection pass for PSF modelling.",
      "title": "Psfadaptiveincludethresholdmultiplier",
      "type": "number"
    },
    "psfAdaptiveThresholdValue": {
      "default": NaN,
      "description": "Threshold value used in the adaptive threshold detection pass for PSF modelling.",
      "title": "Psfadaptivethresholdvalue",
      "type": "number"
    },
    "psfApCorrSigmaScaledDelta": {
      "default": NaN,
      "description": "Delta (max - min) of the psf flux aperture correction factors scaled (divided) by the psfSigma evaluated on a grid of unmasked pixels.",
      "title": "Psfapcorrsigmascaleddelta",
      "type": "number"
    },
    "psfApFluxDelta": {
      "default": NaN,
      "description": "Delta (max - min) of the model psf aperture flux (with aperture radius of max(2, 3*psfSigma)) values evaluated on a grid of unmasked pixels.",
      "title": "Psfapfluxdelta",
      "type": "number"
    },
    "psfArea": {
      "default": NaN,
      "description": "PSF effective area (pixels**2).",
      "title": "Psfarea",
      "type": "number"
    },
    "psfIxx": {
      "default": NaN,
      "description": "PSF shape Ixx (pixels**2).",
      "title": "Psfixx",
      "type": "number"
    },
    "psfIxy": {
      "default": NaN,
      "description": "PSF shape Ixy (pixels**2).",
      "title": "Psfixy",
      "type": "number"
    },
    "psfIyy": {
      "default": NaN,
      "description": "PSF shape Iyy (pixels**2).",
      "title": "Psfiyy",
      "type": "number"
    },
    "psfSigma": {
      "default": NaN,
      "description": "PSF determinant radius (pixels).",
      "title": "Psfsigma",
      "type": "number"
    },
    "psfStarDeltaE1Median": {
      "default": NaN,
      "description": "Psf stars median E1 residual (starE1 - psfE1).",
      "title": "Psfstardeltae1Median",
      "type": "number"
    },
    "psfStarDeltaE1Scatter": {
      "default": NaN,
      "description": "Psf stars MAD E1 scatter (starE1 - psfE1).",
      "title": "Psfstardeltae1Scatter",
      "type": "number"
    },
    "psfStarDeltaE2Median": {
      "default": NaN,
      "description": "Psf stars median E2 residual (starE2 - psfE2).",
      "title": "Psfstardeltae2Median",
      "type": "number"
    },
    "psfStarDeltaE2Scatter": {
      "default": NaN,
      "description": "Psf stars MAD E2 scatter (starE2 - psfE2).",
      "title": "Psfstardeltae2Scatter",
      "type": "number"
    },
    "psfStarDeltaSizeMedian": {
      "default": NaN,
      "description": "Psf stars median size residual (starSize - psfSize).",
      "title": "Psfstardeltasizemedian",
      "type": "number"
    },
    "psfStarDeltaSizeScatter": {
      "default": NaN,
      "description": "Psf stars MAD size scatter (starSize - psfSize).",
      "title": "Psfstardeltasizescatter",
      "type": "number"
    },
    "psfStarScaledDeltaSizeScatter": {
      "default": NaN,
      "description": "Psf stars MAD size scatter scaled by psfSize**2.",
      "title": "Psfstarscaleddeltasizescatter",
      "type": "number"
    },
    "psfTE1e1": {
      "default": NaN,
      "description": "Per-exposure TE1e1 ~ <de1 de1> of PSF residual ellipticity, averaged over theta [0,1] arcmin via treecorr KK correlation. Dimensionless; used to form the full-survey TE1 metric.",
      "title": "Psfte1E1",
      "type": "number"
    },
    "psfTE1e2": {
      "default": NaN,
      "description": "Per-exposure TE1e2 ~ <de2 de2> of PSF residual ellipticity, averaged over theta [0,1] arcmin via treecorr KK correlation. Dimensionless; used to form the full-survey TE1 metric.",
      "title": "Psfte1E2",
      "type": "number"
    },
    "psfTE1ex": {
      "default": NaN,
      "description": "Per-exposure TE1ex ~ <de1 de2> of PSF residual ellipticity, averaged over theta [0,1] arcmin via treecorr KK correlation. Dimensionless; used to form the full-survey TE1 metric.",
      "title": "Psfte1Ex",
      "type": "number"
    },
    "psfTE2e1": {
      "default": NaN,
      "description": "Per-exposure TE2e1 ~ <de1 de1> of PSF residual ellipticity, averaged over theta [5,100] arcmin via treecorr KK correlation. Dimensionless; used to form the full-survey TE2 metric.",
      "title": "Psfte2E1",
      "type": "number"
    },
    "psfTE2e2": {
      "default": NaN,
      "description": "Per-exposure TE2e2 ~ <de2 de2> of PSF residual ellipticity, averaged over theta [5,100] arcmin via treecorr KK correlation. Dimensionless; used to form the full-survey TE2 metric.",
      "title": "Psfte2E2",
      "type": "number"
    },
    "psfTE2ex": {
      "default": NaN,
      "description": "Per-exposure TE2ex ~ <de1 de2> of PSF residual ellipticity, averaged over theta [5,100] arcmin via treecorr KK correlation. Dimensionless; used to form the full-survey TE2 metric.",
      "title": "Psfte2Ex",
      "type": "number"
    },
    "psfTE3e1": {
      "default": NaN,
      "description": "Per-exposure median-over-CCDs of TE3e1 ~ <de1 de1> of PSF residual ellipticity, where each CCD uses theta within [0,5] arcmin bins. Dimensionless; downstream pipelines take the 85th percentile over images to evaluate TE3.",
      "title": "Psfte3E1",
      "type": "number"
    },
    "psfTE3e2": {
      "default": NaN,
      "description": "Per-exposure median-over-CCDs of TE3e2 ~ <de2 de2> of PSF residual ellipticity, where each CCD uses theta within [0,5] arcmin bins. Dimensionless; downstream pipelines take the 85th percentile over images to evaluate TE3.",
      "title": "Psfte3E2",
      "type": "number"
    },
    "psfTE3ex": {
      "default": NaN,
      "description": "Per-exposure median-over-CCDs of TE3ex ~ <de1 de2> of PSF residual ellipticity, where each CCD uses theta within [0,5] arcmin bins. Dimensionless; downstream pipelines take the 85th percentile over images to evaluate TE3.",
      "title": "Psfte3Ex",
      "type": "number"
    },
    "psfTE4e1": {
      "default": NaN,
      "description": "Per-exposure median-over-CCDs of TE4e1 ~ <de1 de1> of PSF residual ellipticity, where each CCD uses theta within [5,20] arcmin bins. Dimensionless; downstream pipelines take the 85th percentile over images to evaluate TE4.",
      "title": "Psfte4E1",
      "type": "number"
    },
    "psfTE4e2": {
      "default": NaN,
      "description": "Per-exposure median-over-CCDs of TE4e2 ~ <de2 de2> of PSF residual ellipticity, where each CCD uses theta within [5,20] arcmin bins. Dimensionless; downstream pipelines take the 85th percentile over images to evaluate TE4.",
      "title": "Psfte4E2",
      "type": "number"
    },
    "psfTE4ex": {
      "default": NaN,
      "description": "Per-exposure median-over-CCDs of TE4ex ~ <de1 de2> of PSF residual ellipticity, where each CCD uses theta within [5,20] arcmin bins. Dimensionless; downstream pipelines take the 85th percentile over images to evaluate TE4.",
      "title": "Psfte4Ex",
      "type": "number"
    },
    "psfTraceRadiusDelta": {
      "default": NaN,
      "description": "Delta (max - min) of the model psf trace radius values evaluated on a grid of unmasked pixels (pixels).",
      "title": "Psftraceradiusdelta",
      "type": "number"
    },
    "ra": {
      "default": NaN,
      "description": "Bounding box center Right Ascension (degrees).",
      "title": "Ra",
      "type": "number"
    },
    "raCorners": {
      "description": "Right Ascension of bounding box corners (degrees).",
      "maxItems": 4,
      "minItems": 4,
      "prefixItems": [
        {
          "type": "number"
        },
        {
          "type": "number"
        },
        {
          "type": "number"
        },
        {
          "type": "number"
        }
      ],
      "title": "Racorners",
      "type": "array"
    },
    "refCatSourceDensity": {
      "default": NaN,
      "description": "Source density for the detector region as computed from the loaded reference catalog (number per degrees**2).",
      "title": "Refcatsourcedensity",
      "type": "number"
    },
    "schema_version": {
      "default": "1.0.0",
      "description": "Data-model schema version of this tree (major.minor.patch).",
      "title": "Schema Version",
      "type": "string"
    },
    "shapeletsCoeffs": {
      "description": "Coefficients from the PSF star shapelet decomposition.",
      "items": {
        "type": "number"
      },
      "title": "Shapeletscoeffs",
      "type": "array"
    },
    "shapeletsIqScore": {
      "default": NaN,
      "description": "The dimensionless image quality score as determined from the shapelets decomposition that includes power from the median centroid offset between those used in the decomposition and those of the centroid slot in addition to non-atmospheric decomposition coefficients. The score spans the range [0.0, 1.0] with lower values indicating better image quality.",
      "title": "Shapeletsiqscore",
      "type": "number"
    },
    "shapeletsOnlyIqScore": {
      "default": NaN,
      "description": "The dimensionless image quality score as determined from the shapelets decomposition that includes power only from the non-atmospheric decomposition coefficients. The score spans the range [0.0, 1.0] with lower values indicating better image quality.",
      "title": "Shapeletsonlyiqscore",
      "type": "number"
    },
    "shapeletsStarEMedian": {
      "default": NaN,
      "description": "Median ellipticity (sqrt(starE1**2.0 + starE2**2.0)) of the sources used in the shapelet decomposition.",
      "title": "Shapeletsstaremedian",
      "type": "number"
    },
    "shapeletsStarUnNormalizedEMedian": {
      "default": NaN,
      "description": "Median un-normalized ellipticity (sqrt((starXX - starYY)**2.0 + (2.0*starXY)**2.0)) of the sources used in the shapelet decomposition (pixel**2).",
      "title": "Shapeletsstarunnormalizedemedian",
      "type": "number"
    },
    "skyBg": {
      "default": NaN,
      "description": "Average sky background (ADU).",
      "title": "Skybg",
      "type": "number"
    },
    "skyNoise": {
      "default": NaN,
      "description": "Average sky noise (ADU).",
      "title": "Skynoise",
      "type": "number"
    },
    "starComa1Median": {
      "default": NaN,
      "description": "Coma-like higher-order moment combination: median M30 + M12 of the stars used in the PSF model.",
      "title": "Starcoma1Median",
      "type": "number"
    },
    "starComa2Median": {
      "default": NaN,
      "description": "Coma-like higher-order moment combination: median M21 + M03 of the stars used in the PSF model.",
      "title": "Starcoma2Median",
      "type": "number"
    },
    "starE41Median": {
      "default": NaN,
      "description": "Fourth-order ellipticity-like higher-order moment combination: median M40 - M04 of the stars used in the PSF model.",
      "title": "Stare41Median",
      "type": "number"
    },
    "starE42Median": {
      "default": NaN,
      "description": "Fourth-order ellipticity-like higher-order moment combination: median 2*(M31 + M13) of the stars used in the PSF model.",
      "title": "Stare42Median",
      "type": "number"
    },
    "starEMedian": {
      "default": NaN,
      "description": "Median ellipticity (sqrt(starE1**2.0 + starE2**2.0)) of the stars used in the PSF model.",
      "title": "Staremedian",
      "type": "number"
    },
    "starKurtosisMedian": {
      "default": NaN,
      "description": "Kurtosis-like higher-order moment combination: median M40 + 2*M22 + M04 of the stars used in the PSF model.",
      "title": "Starkurtosismedian",
      "type": "number"
    },
    "starTrefoil1Median": {
      "default": NaN,
      "description": "Trefoil-like higher-order moment combination: median M30 - 3*M12 of the stars used in the PSF model.",
      "title": "Startrefoil1Median",
      "type": "number"
    },
    "starTrefoil2Median": {
      "default": NaN,
      "description": "Trefoil-like higher-order moment combination: median 3*M21 - M03 of the stars used in the PSF model.",
      "title": "Startrefoil2Median",
      "type": "number"
    },
    "starUnNormalizedEMedian": {
      "default": NaN,
      "description": "Median un-normalized ellipticity (sqrt((starXX - starYY)**2.0 + (2.0*starXY)**2.0)) of the stars used in the PSF model.",
      "title": "Starunnormalizedemedian",
      "type": "number"
    },
    "zenithDistance": {
      "default": NaN,
      "description": "Bounding box center zenith distance (degrees).",
      "title": "Zenithdistance",
      "type": "number"
    },
    "zeroPoint": {
      "default": NaN,
      "description": "Mean zeropoint in detector (mag).",
      "title": "Zeropoint",
      "type": "number"
    }
  },
  "title": "observation_summary_stats",
  "type": "object"
}
