PSF3D

class gammapy.irf.PSF3D(energy_axis_true, offset_axis, rad_axis, psf_value, energy_thresh_lo=<Quantity 0.1 TeV>, energy_thresh_hi=<Quantity 100. TeV>, interp_kwargs=None)[source]

Bases: object

PSF with axes: energy, offset, rad.

Data format specification: PSF_TABLE

Parameters
energy_axis_trueMapAxis

True energy axis.

offset_axisMapAxis

Offset axis

rad_axisMapAxis

Rad axis

psf_valueQuantity

PSF (3-dim with axes: psf[rad_index, offset_index, energy_index]

energy_thresh_loQuantity

Lower energy threshold.

energy_thresh_hiQuantity

Upper energy threshold.

Attributes Summary

energy_axis_true

offset_axis

rad_axis

tag

Methods Summary

containment_radius(energy[, theta, …])

Containment radius.

evaluate([energy, offset, rad])

Interpolate PSF value at a given offset and energy.

from_table(table)

Create PSF3D from Table.

peek([figsize])

Quick-look summary plots.

plot_containment([fraction, ax, add_cbar])

Plot containment image with energy and theta axes.

plot_containment_vs_energy([fractions, …])

Plot containment fraction as a function of energy.

plot_psf_vs_rad([theta, energy])

Plot PSF vs rad.

read(filename[, hdu])

Create PSF3D from FITS file.

to_energy_dependent_table_psf([theta, rad, …])

Convert PSF3D in EnergyDependentTablePSF.

to_hdulist()

Convert PSF table data to FITS HDU list.

to_table_psf(energy[, theta])

Create TablePSF at one given energy.

write(filename, *args, **kwargs)

Write PSF to FITS file.

Attributes Documentation

energy_axis_true
offset_axis
rad_axis
tag = 'psf_table'

Methods Documentation

containment_radius(energy, theta='0 deg', fraction=0.68, interp_kwargs=None)[source]

Containment radius.

Parameters
energyQuantity

Energy

thetaAngle

Offset in the field of view. Default theta = 0 deg

fractionfloat

Containment fraction. Default fraction = 0.68

Returns
radiusQuantity

Containment radius in deg

evaluate(energy=None, offset=None, rad=None)[source]

Interpolate PSF value at a given offset and energy.

Parameters
energyQuantity

energy value

offsetAngle

Offset in the field of view

radAngle

Offset wrt source position

Returns
valuesQuantity

Interpolated value

classmethod from_table(table)[source]

Create PSF3D from Table.

Parameters
tableTable

Table Table-PSF info.

peek(figsize=(15, 5))[source]

Quick-look summary plots.

plot_containment(fraction=0.68, ax=None, add_cbar=True, **kwargs)[source]

Plot containment image with energy and theta axes.

Parameters
fractionfloat

Containment fraction between 0 and 1.

add_cbarbool

Add a colorbar

plot_containment_vs_energy(fractions=[0.68, 0.95], thetas=<Angle [0., 1.] deg>, ax=None, **kwargs)[source]

Plot containment fraction as a function of energy.

plot_psf_vs_rad(theta='0 deg', energy=<Quantity 1. TeV>)[source]

Plot PSF vs rad.

Parameters
energyQuantity

Energy. Default energy = 1 TeV

thetaAngle

Offset in the field of view. Default theta = 0 deg

classmethod read(filename, hdu='PSF_2D_TABLE')[source]

Create PSF3D from FITS file.

Parameters
filenamestr

File name

hdustr

HDU name

to_energy_dependent_table_psf(theta='0 deg', rad=None, exposure=None)[source]

Convert PSF3D in EnergyDependentTablePSF.

Parameters
thetaAngle

Offset in the field of view

radAngle

Offset from PSF center used for evaluating the PSF on a grid. Default is the rad from this PSF.

exposureQuantity

Energy dependent exposure. Should be in units equivalent to ‘cm^2 s’. Default exposure = 1.

Returns
table_psfEnergyDependentTablePSF

Energy-dependent PSF

to_hdulist()[source]

Convert PSF table data to FITS HDU list.

Returns
hdu_listHDUList

PSF in HDU list format.

to_table_psf(energy, theta='0 deg', **kwargs)[source]

Create TablePSF at one given energy.

Parameters
energyQuantity

Energy

thetaAngle

Offset in the field of view. Default theta = 0 deg

Returns
psfTablePSF

Table PSF

write(filename, *args, **kwargs)[source]

Write PSF to FITS file.

Calls writeto, forwarding all arguments.