.. _irf: Instrument Response Functions (DL3) =================================== Typically the IRFs are stored in the form of multidimensional tables giving the response functions such as the distribution of gamma-like events or the probability density functions of the reconstructed energy and position. Expected number of detected events ---------------------------------- To model the expected number of events a gamma-ray source should produce on a detector one has to model its effect using an instrument response function (IRF). In general, such a function gives the probability to detect a photon emitted from true position :math:`p_{\rm true}` on the sky and true energy :math:`E_{\rm true}` at reconstructed position :math:`p` and energy :math:`E` and the effective collection area of the detector at position :math:`p_{\rm true}` on the sky and true energy :math:`E_{\rm true}`. We can write the expected number of detected events :math:`N(p, E)`: .. math:: N(p, E) {\rm d}p {\rm d}E = t_{\rm obs} \int_{E_{\rm true}} {\rm d}E_{\rm true} \, \int_{p_{\rm true}} {\rm d}p_{\rm true} \, R(p, E|p_{\rm true}, E_{\rm true}) \times \Phi(p_{\rm true}, E_{\rm true}) where: * :math:`R(p, E| p_{\rm true}, E_{\rm true})` is the instrument response (unit: :math:`{\rm m}^2\,{\rm TeV}^{-1}`) * :math:`\Phi(p_{\rm true}, E_{\rm true})` is the sky flux model (unit: :math:`{\rm m}^{-2}\,{\rm s}^{-1}\,{\rm TeV}^{-1}\,{\rm sr}^{-1}`) * :math:`t_{\rm obs}` is the observation time: (unit: :math:`{\rm s}`) Factorisation of the IRFs ------------------------- Most of the time, in high level gamma-ray data (DL3), we assume that the instrument response can be simplified as the product of three independent functions: .. math:: R(p, E|p_{\rm true}, E_{\rm true}) = A_{\rm eff}(p_{\rm true}, E_{\rm true}) \times PSF(p|p_{\rm true}, E_{\rm true}) \times E_{\rm disp}(E|p_{\rm true}, E_{\rm true}), where: * :math:`A_{\rm eff}(p_{\rm true}, E_{\rm true})` is the effective collection area of the detector (unit: :math:`{\rm m}^2`). It is the product of the detector collection area times its detection efficiency at true energy :math:`E_{\rm true}` and position :math:`p_{\rm true}`. * :math:`PSF(p|p_{\rm true}, E_{\rm true})` is the point spread function (unit: :math:`{\rm sr}^{-1}`). It gives the probability of measuring a direction :math:`p` when the true direction is :math:`p_{\rm true}` and the true energy is :math:`E_{\rm true}`. Gamma-ray instruments consider the probability density of the angular separation between true and reconstructed directions :math:`\delta p = p_{\rm true} - p`, i.e. :math:`PSF(\delta p|p_{\rm true}, E_{\rm true})`. * :math:`E_{\rm disp}(E|p_{\rm true}, E_{\rm true})` is the energy dispersion (unit: :math:`{\rm TeV}^{-1}`). It gives the probability to reconstruct the photon at energy :math:`E` when the true energy is :math:`E_{\rm true}` and the true position :math:`p_{\rm true}`. Gamma-ray instruments consider the probability density of the migration :math:`\mu=\frac{E}{E_{\rm true}}`, i.e. :math:`E_{\rm disp}(\mu|p_{\rm true}, E_{\rm true})`. The implicit assumption here is that energy dispersion and PSF are completely independent. This is not totally valid in some situations. These functions are obtained through Monte-Carlo simulations of gamma-ray showers for different observing conditions, e.g. detector configuration, zenith angle of the pointing position, detector state and different event reconstruction and selection schemes. In the DL3 format, the IRF are distributed for each observing run. Further details on individuals responses and how they are implemented in gammapy are given in :ref:`irf-aeff`, :ref:`irf-edisp` and :ref:`irf-psf`. Most of the formats defined at :ref:`gadf:iact-irf` are supported. At the moment, there is little support for Fermi-LAT or other instruments. Most users will not use `gammapy.irf` directly, but will instead use IRFs as part of their spectrum, image or cube analysis to compute exposure and effective EDISP and PSF for a given dataset. IRF axis naming --------------- In the IRF classes we use the following axis naming convention: ================= ============================================================================ Variable Definition ================= ============================================================================ ``energy`` Reconstructed energy axis (:math:`E`) ``energy_true`` True energy axis (:math:`E_{\rm true}`) ``offset`` Field of view offset from center (:math:`p_{\rm true}`) ``fov_lon`` Field of view longitude ``fov_lat`` Field of view latitude ``migra`` Energy migration (:math:`\mu`) ``rad`` Offset angle from source position (:math:`\delta p`) ================= ============================================================================ Using gammapy.irf ----------------- .. minigallery:: gammapy.irf.PSFMap :add-heading: .. minigallery:: gammapy.irf.EDispKernelMap :add-heading: .. minigallery:: gammapy.irf.load_irf_dict_from_file :add-heading: .. toctree:: :maxdepth: 1 :hidden: aeff bkg edisp psf