EventListDataset¶
-
class
gammapy.data.EventListDataset(event_list, gti=None)[source]¶ Bases:
objectEvent list dataset (event list plus some extra info).
TODO: I’m not sure if IRFs should be included in this class or if an extra container class should be added.
Parameters: event_list :
EventListEvent list table
gti :
GTIGood time interval table
Methods Summary
check([checks])Check if format and content is ok. from_hdu_list(hdu_list)Create EventListfrom aHDUList.read(filename)Read event list from FITS file. to_fits()Convert to FITS HDU list format. vstack_from_files(filenames[, logger])Stack event lists vertically (combine events and GTIs). write(*args, **kwargs)Write to FITS file. Methods Documentation
-
check(checks='all')[source]¶ Check if format and content is ok.
This is a convenience method that instantiates and runs a
EventListDatasetChecker… if you want more options use this way to use it:>>> from gammapy.data import EventListDatasetChecker >>> checker = EventListDatasetChecker(event_list, ...) >>> checker.run(which, ...) #
Parameters: checks : list of str or ‘all’
Which checks to run (see list in
rundocstring).Returns: ok : bool
Everything ok?
-
to_fits()[source]¶ Convert to FITS HDU list format.
Returns: hdu_list :
HDUListHDU list with EVENTS and GTI extension.
-
classmethod
vstack_from_files(filenames, logger=None)[source]¶ Stack event lists vertically (combine events and GTIs).
This function stacks (a.k.a. concatenates) event lists. E.g. if you have one event list with 100 events (i.e. 100 rows) and another with 42 events, the output event list will have 142 events.
It also stacks the GTIs so that exposure computations are still possible using the stacked event list.
At the moment this can require a lot of memory. All event lists are loaded into memory at the same time.
TODO: implement and benchmark different a more efficient method: Get number of rows from headers, pre-allocate a large table, open files one by one and fill correct rows.
TODO: handle header keywords “correctly”. At the moment the output event list header keywords are copies of the values from the first observation, i.e. meaningless. Here’s a (probably incomplete) list of values we should handle (usually by computing the min, max or mean or removing it): - OBS_ID - DATE_OBS, DATE_END - TIME_OBS, TIME_END - TSTART, TSTOP - LIVETIME, DEADC - RA_PNT, DEC_PNT - ALT_PNT, AZ_PNT
Parameters: filenames : list of str
List of event list filenames
Returns: event_list_dataset :
EventListDataset
-