Background3D¶
-
class
gammapy.irf.Background3D(energy_lo, energy_hi, fov_lon_lo, fov_lon_hi, fov_lat_lo, fov_lat_hi, data, meta=None, interp_kwargs=None)[source]¶ Bases:
objectBackground 3D.
Data format specification: BKG_3D
Parameters: energy_lo, energy_hi :
QuantityEnergy binning
fov_lon_lo, fov_lon_hi :
QuantityFOV coordinate X-axis binning, in AltAz frame.
fov_lat_lo, fov_lat_hi :
QuantityFOV coordinate Y-axis binning, in AltAz frame.
data :
QuantityBackground rate (usually:
s^-1 MeV^-1 sr^-1)Examples
Here’s an example you can use to learn about this class:
>>> from gammapy.irf import Background3D >>> filename = '$GAMMAPY_DATA/cta-1dc/caldb/data/cta/1dc/bcf/South_z20_50h/irf_file.fits' >>> bkg_3d = Background3D.read(filename, hdu='BACKGROUND') >>> print(bkg_3d) Background3D NDDataArray summary info energy : size = 21, min = 0.016 TeV, max = 158.489 TeV fov_lon : size = 36, min = -5.833 deg, max = 5.833 deg fov_lat : size = 36, min = -5.833 deg, max = 5.833 deg Data : size = 27216, min = 0.000 1 / (MeV s sr), max = 0.421 1 / (MeV s sr)
Attributes Summary
default_interp_kwargsDefault Interpolation kwargs for NDDataArray.Methods Summary
evaluate(fov_lon, fov_lat, energy_reco[, method])Evaluate at given FOV position and energy. from_hdulist(hdulist[, hdu])Create from HDUList.from_table(table)Read from Table.integrate_on_energy_range(fov_lon, fov_lat, …)Integrate over an energy range. read(filename[, hdu])Read from file. to_2d()Convert to Background2D.to_fits([name])Convert to BinTableHDU.to_table()Convert to Table.Attributes Documentation
-
default_interp_kwargs= {'bounds_error': False, 'fill_value': None}¶ Default Interpolation kwargs for
NDDataArray. Extrapolate.
Methods Documentation
-
evaluate(fov_lon, fov_lat, energy_reco, method='linear', **kwargs)[source]¶ Evaluate at given FOV position and energy.
Parameters: fov_lon, fov_lat :
AngleFOV coordinates expecting in AltAz frame.
energy_reco :
Quantityenergy on which you want to interpolate. Same dimension than fov_lat and fov_lat
method : str {‘linear’, ‘nearest’}, optional
Interpolation method
kwargs : dict
option for interpolation for
RegularGridInterpolatorReturns: array :
QuantityInterpolated values, axis order is the same as for the NDData array
-
integrate_on_energy_range(fov_lon, fov_lat, energy_range, n_integration_bins=1, method='linear', **kwargs)[source]¶ Integrate over an energy range.
Parameters: fov_lon, fov_lat :
AngleFOV coordinates expecting in AltAz frame.
energy_range: `~astropy.units.Quantity`
Energy range
n_integration_bins : int
Number of bins in the energy range
method : {‘linear’, ‘nearest’}, optional
Interpolation method
kwargs : dict
Passed to
scipy.interpolate.RegularGridInterpolator.Returns: array :
QuantityReturns 2D array with axes fov_lon, fov_lat
-
to_2d()[source]¶ Convert to
Background2D.This takes the values at Y = 0 and X >= 0.
-
to_fits(name='BACKGROUND')[source]¶ Convert to
BinTableHDU.
-