Observation index table¶
The observation index table is stored in a FITS file as a BINTABLE HDU:
- Suggested filename:
obs-index.fits.gz - Suggested HDU name:
OBS_INDEX
It contains one row per observation (a.k.a. run) and lists parameters that are commonly used for observation selection, grouping and analysis.
Required columns¶
OBS_IDtype: int- Unique observation identifier (Run number)
RA_PNTtype: float, unit: deg- Obsevation pointing right ascension (see RA / DEC)
DEC_PNTtype: float, unit: deg- Observation pointing declination (see RA / DEC)
ZEN_PNTtype: float, unit: deg- Observation pointing zenith angle at observation mid-time
TMID(see Alt / Az)
- Observation pointing zenith angle at observation mid-time
ALT_PNTfloat, deg- Observation pointing altitude at observation mid-time
TMID(see Alt / Az)
- Observation pointing altitude at observation mid-time
AZ_PNTtype: float, unit: deg- Observation pointing azimuth at observation mid-time
TMID(see Alt / Az)
- Observation pointing azimuth at observation mid-time
ONTIMEtype: float, unit: s- Total observation time (including dead time).
- Equals
TSTOP-TSTART
LIVETIMEtype: float, unit: s- Total livetime (observation minus dead time)
DEADCtype: float- Dead time correction.
- It is defined such that
LIVETIME=DEADC*ONTIMEi.e. the fraction of time the telescope was actually able to take data.
TSTARTtype: float, unit: days- Start of observation in MJD
TSTART_STRtype: string- Start of observation in UTC string format: “YYYY-MM-DD HH:MM:SS”
TSTOPtype: float, unit: days- End time of observation in MJD
TSTOP_STRtype: string- End of observation in UTC string format: “YYYY-MM-DD HH:MM:SS”
N_TELStype: int- Number of participating telescopes
TELLISTtype: string- Telescope IDs (e.g. ‘1,2,3,4’)
QUALITYtype: int- Observation data quality. The following levels of data quality are defined:
- 0 = best quality, suitable for spectral analysis.
- 1 = medium quality, suitable for detection, but not spectra (typically if the atmosphere was hazy).
- 2 = bad quality, usually not to be used for analysis.
Optional columns¶
The following columns are optional. They are sometimes used for observation selection or data quality checks or analysis, but aren’t needed for most users.
OBJECTtype: string- Primary target of the observation
- Recommendations:
- Use a name that can be resolved by SESAME
- For survey observations, use “survey”.
- For Off Observation, use “off observation”
RA_OBJtype: float, unit: deg- Right ascension of
OBJECT
- Right ascension of
DEC_OBJtype: float, unit: deg- Declination of
OBJECT
- Declination of
TMIDtype: float, unit: days- Mid time of observation in MJD (=
TSTART+ 0.5 *ONTIME)
- Mid time of observation in MJD (=
TMID_STRtype: string- Mid time of observation in UTC string format: “YYYY-MM-DD HH:MM:SS”
EVENT_COUNTtype: int- Number of events in run
EVENT_RA_MEDIANtype: float, unit: deg- Median right ascension of events
EVENT_DEC_MEDIANtype: float, unit: deg- Median declination of events
EVENT_ENERGY_MEDIANtype: float, unit: deg- Median energy of events
EVENT_TIME_MINtype: double, unit: s- First event time
EVENT_TIME_MAXtype: double, unit: s- Last event time
BKG_SCALEtype: float- Observation-dependent background scaling factor. See notes below.
TRGRATEtype: float, unit: Hz- Mean system trigger rate
ZTRGRATEtype: float, unit: Hz- Zenith equivalent mean system trigger rate
- Some HESS chains export this at the moment and this quantity can be useful for data selection. Comparing values from different chains or other telescopes would require a more specific specification.
MUONEFFtype: float- Mean muon efficiency
- Currently use definitions from analysis chain, since creating a unified specification is tricky.
BROKPIXtype: float- Fraction of broken pixels (0.15 means 15% broken pixels)
AIRTEMPtype: float, unit: deg C- Mean air temperature at ground during the observation.
PRESSUREtype: float, unit: hPa- Mean air pressure at ground during the observation.
NSBLEVELtype: float, unit: a.u.- Measure for NSB level
- Some HESS chains export this at the moment and this quantity can be useful for data selection. Comparing values from different chains or other telescopes would require a more specific specification.
RELHUMtype: float- Relative humidity
- Definition
Notes¶
- This table doesn’t require header keywords. We recommend FITS is used, but it can be stored e.g. in CSV as well.
- Some of the required columns are redundant. E.g.
ONTIME=TSTOP-TSTART. The motivation to declare those columns required is to make it easy for users and tools to browse the observation lists and select observations via cuts on these parameters without having to compute them on the fly. - Observation runs where the telescopes don’t point to a fixed RA / DEC position (e.g. drift scan runs) aren’t supported at the moment by this format.
- Times are given as a UTC string or MJD float.
This is preferred over the use of mission elapsed time (MET),
because MET requires a reference timepoint stored in header keywords
MJDREFIandMJDREFF, and we felt that having a simpler table format here that doesn’t require a header would be nice. - Purpose / definition of
BKG_SCALE: For a 3D likelihood analysis a good estimate of the background is important. The run-by-run varation of the background rate is ~20%. The main reasons are the changing atmospheric conditions. This parameter allows to specify (from separate studies) a scaling factor to the Background This factor comes e.g. from the analysis of off runs. The background normalisation usually dependends on e.g. the number of events in a run, the zenith angle and other parameters. This parameter provides the possibility to give the user a better prediction of the background normalisation. For CTA this might be induced from atmospheric monitoring and additional diagnostic input. For HESS we try to find a trend in the off run background normalisations and other parameters such as number of events per unit livetime. The background scale should be around 1.0 if the background model is good. This number should also be set to 1.0 if no dependency analysis has been performed. If the background model normalisation is off by a few orders of magnitude for some reasons, this can also be incorporated here.