EffectiveAreaTable2D¶
-
class
gammapy.irf.
EffectiveAreaTable2D
(axes, data=0, unit='', meta=None, interp_kwargs=None)[source]¶ Bases:
gammapy.irf.core.IRF
2D effective area table.
Data format specification: AEFF_2D
- Parameters
- energy_axis_true
MapAxis
True energy axis
- offset_axis
MapAxis
Field of view offset axis.
- data
Quantity
Effective area
- metadict
Meta data
- energy_axis_true
Examples
Here’s an example you can use to learn about this class:
>>> from gammapy.irf import EffectiveAreaTable2D >>> filename = '$GAMMAPY_DATA/cta-1dc/caldb/data/cta/1dc/bcf/South_z20_50h/irf_file.fits' >>> aeff = EffectiveAreaTable2D.read(filename, hdu='EFFECTIVE AREA') >>> print(aeff) EffectiveAreaTable2D -------------------- axes : ['energy_true', 'offset'] shape : (42, 6) ndim : 2 unit : m2 dtype : >f4
Here’s another one, created from scratch, without reading a file:
>>> from gammapy.irf import EffectiveAreaTable2D >>> from gammapy.maps import MapAxis >>> energy_axis_true = MapAxis.from_energy_bounds("0.1 TeV", "100 TeV", nbin=30, name="energy_true") >>> offset_axis = MapAxis.from_bounds(0, 5, nbin=4, name="offset") >>> aeff = EffectiveAreaTable2D(axes=[energy_axis_true, offset_axis], data=1e10, unit="cm2") >>> print(aeff) EffectiveAreaTable2D -------------------- axes : ['energy_true', 'offset'] shape : (30, 4) ndim : 2 unit : cm2 dtype : float64
Attributes Summary
MapAxes
Whether the IRF depends on offset
Whether the IRF is pointlike of full containment.
Map unit (
Unit
)Methods Summary
cumsum
(axis_name)Compute cumsum along a given axis
evaluate
([method])Evaluate IRF
from_hdulist
(hdulist[, hdu, format])Create from
HDUList
.from_parametrization
([energy_axis_true, …])Create parametrized effective area.
from_table
(table[, format])Read from
Table
.integral
(axis_name, **kwargs)Compute integral along a given axis
integrate_log_log
(axis_name, **kwargs)Integrate along a given axis.
interp_missing_data
(axis_name)Interpolate missing data along a given axis
normalize
(axis_name)Normalise data in place along a given axis.
pad
(pad_width, axis_name, **kwargs)Pad irf along a given axis.
peek
([figsize])Quick-look summary plots.
plot
([ax, add_cbar])Plot effective area image.
plot_energy_dependence
([ax, offset])Plot effective area versus energy for a given offset.
plot_offset_dependence
([ax, energy])Plot effective area versus offset for a given energy.
read
(filename[, hdu, format])Read from file.
to_hdulist
([format])to_table
([format])Convert to table
to_table_hdu
([format])Convert to
BinTableHDU
.write
(filename, *args, **kwargs)Write IRF to fits.
Attributes Documentation
-
axes
¶ MapAxes
-
data
¶
-
default_interp_kwargs
= {'bounds_error': False, 'fill_value': 0.0}¶
-
is_offset_dependent
¶ Whether the IRF depends on offset
-
is_pointlike
¶ Whether the IRF is pointlike of full containment.
-
required_axes
= ['energy_true', 'offset']¶
-
tag
= 'aeff_2d'¶
Methods Documentation
-
cumsum
(axis_name)¶ Compute cumsum along a given axis
- Parameters
- axis_namestr
Along which axis to integrate.
- Returns
- irf
IRF
Cumsum IRF
- irf
-
evaluate
(method=None, **kwargs)¶ Evaluate IRF
- Parameters
- **kwargsdict
Coordinates at which to evaluate the IRF
- methodstr {‘linear’, ‘nearest’}, optional
Interpolation method
- Returns
- array
Quantity
Interpolated values
- array
-
classmethod
from_hdulist
(hdulist, hdu=None, format='gadf-dl3')¶ Create from
HDUList
.- Parameters
- hdulist
HDUList
HDU list
- hdustr
HDU name
- format{“gadf-dl3”}
Format specification
- hdulist
- Returns
- irf
IRF
IRF class
- irf
-
classmethod
from_parametrization
(energy_axis_true=None, instrument='HESS')[source]¶ Create parametrized effective area.
Parametrizations of the effective areas of different Cherenkov telescopes taken from Appendix B of Abramowski et al. (2010), see https://ui.adsabs.harvard.edu/abs/2010MNRAS.402.1342A .
\[A_{eff}(E) = g_1 \left(\frac{E}{\mathrm{MeV}}\right)^{-g_2}\exp{\left(-\frac{g_3}{E}\right)}\]This method does not model the offset dependence of the effective area, but just assumes that it is constant.
- Parameters
- energy_axis_true
MapAxis
Energy binning, analytic function is evaluated at log centers
- instrument{‘HESS’, ‘HESS2’, ‘CTA’}
Instrument name
- energy_axis_true
- Returns
- aeff
EffectiveAreaTable2D
Effective area table
- aeff
-
classmethod
from_table
(table, format='gadf-dl3')¶ Read from
Table
.- Parameters
- table
Table
Table with irf data
- format{“gadf-dl3”}
Format specification
- table
- Returns
- irf
IRF
IRF class.
- irf
-
integral
(axis_name, **kwargs)¶ Compute integral along a given axis
This method uses interpolation of the cumulative sum.
- Parameters
- axis_namestr
Along which axis to integrate.
- **kwargsdict
Coordinates at which to evaluate the IRF
- Returns
- array
Quantity
Returns 2D array with axes offset
- array
-
integrate_log_log
(axis_name, **kwargs)¶ Integrate along a given axis.
This method uses log-log trapezoidal integration.
- Parameters
- axis_namestr
Along which axis to integrate.
- **kwargsdict
Coordinates at which to evaluate the IRF
- Returns
- array
Quantity
Returns 2D array with axes offset
- array
-
interp_missing_data
(axis_name)¶ Interpolate missing data along a given axis
-
normalize
(axis_name)¶ Normalise data in place along a given axis.
- Parameters
- axis_namestr
Along which axis to normalize.
-
pad
(pad_width, axis_name, **kwargs)¶ Pad irf along a given axis.
- Parameters
- pad_width{sequence, array_like, int}
Number of pixels padded to the edges of each axis.
- axis_namestr
Which axis to downsample. By default spatial axes are padded.
- **kwargsdict
Keyword argument forwarded to
pad
- Returns
- irf
IRF
Padded irf
- irf
-
plot_energy_dependence
(ax=None, offset=None, **kwargs)[source]¶ Plot effective area versus energy for a given offset.
-
plot_offset_dependence
(ax=None, energy=None, **kwargs)[source]¶ Plot effective area versus offset for a given energy.
-
classmethod
read
(filename, hdu=None, format='gadf-dl3')¶ Read from file.
- Parameters
- filenamestr or
Path
Filename
- hdustr
HDU name
- format{“gadf-dl3”}
Format specification
- filenamestr or
- Returns
- irf
IRF
IRF class
- irf
-
to_hdulist
(format='gadf-dl3')¶
-
to_table
(format='gadf-dl3')¶ Convert to table
- Parameters
- format{“gadf-dl3”}
Format specification
- Returns
- table
Table
IRF data table
- table
-
to_table_hdu
(format='gadf-dl3')¶ Convert to
BinTableHDU
.- Parameters
- format{“gadf-dl3”}
Format specification
- Returns
- hdu
BinTableHDU
IRF data table hdu
- hdu