ObservationFilter

class gammapy.data.ObservationFilter(time_filter=None, event_filters=None)[source]

Bases: object

Holds and applies filters to observation data.

Parameters:

time_filter : astropy.time.Time

Start and stop time of the selected time interval. For now we only support a single time interval.

event_filters : list of dict

An event filter dictionary needs two keys:

The filtered event list will be an intersection of all filters. A union of filters is not supported yet.

Examples

>>> from gammapy.data import ObservationFilter, DataStore, DataStoreObservation
>>> from astropy.time import Time
>>> from astropy.coordinates import Angle
>>>
>>> time_filter = Time(['2021-03-27T20:10:00', '2021-03-27T20:20:00'])
>>> phase_filter = {'type': 'custom', 'opts': dict(parameter='PHASE', limits=(0.2, 0.8))}
>>>
>>> my_obs_filter = ObservationFilter(time_filter=time_filter, event_filters=[phase_filter])
>>>
>>> ds = DataStore.from_dir("$GAMMAPY_DATA/cta-1dc/index/gps")
>>> my_obs = DataStoreObservation(obs_id=111630, data_store=ds, obs_filter=my_obs_filter)

Attributes Summary

EVENT_FILTER_TYPES

Methods Summary

filter_events(events) Applies the filters to an event list
filter_gti(gti) Applies the filters to a GTI table

Attributes Documentation

EVENT_FILTER_TYPES = {'box_region': 'select_sky_box', 'circular_region': 'select_circular_region', 'custom': 'select_custom'}

Methods Documentation

filter_events(events)[source]

Applies the filters to an event list

Parameters:

events : EventListBase

Event list to which the filters will be applied

Returns:

filtered_events : EventListBase

The filtered event list

filter_gti(gti)[source]

Applies the filters to a GTI table

Parameters:

gti : GTI

GTI table to which the filters will be applied

Returns:

filtered_gti : GTI

The filtered GTI table