FluxPointEstimator¶
-
class
gammapy.spectrum.
FluxPointEstimator
(obs, groups, model, norm_min=0.2, norm_max=5, norm_n_values=11, norm_values=None, sigma=1, sigma_ul=2)[source]¶ Bases:
object
Flux point estimator.
Estimates flux points for a given spectrum observation dataset, energy groups and spectral model.
To estimate the flux point the amplitude of the reference spectral model is fitted within the energy range defined by the energy group. This is done for each group independently. The amplitude is re-normalized using the “norm” parameter, which specifies the deviation of the flux from the reference model in this energy group. See https://gamma-astro-data-formats.readthedocs.io/en/latest/spectra/binned_likelihoods/index.html for details.
The method is also described in the FERMI-LAT catalog paper https://ui.adsabs.harvard.edu/#abs/2015ApJS..218…23A or the HESS Galactic Plane Survey paper https://ui.adsabs.harvard.edu/#abs/2018A%26A…612A…1H
Parameters: obs :
SpectrumObservation
orSpectrumObservationList
Spectrum observation(s)
groups :
SpectrumEnergyGroups
Energy groups (usually output of
SpectrumEnergyGroupMaker
)model :
SpectralModel
Global model (usually output of
SpectrumFit
)norm_min : float
Minimum value for the norm used for the likelihood profile evaluation.
norm_max : float
Maximum value for the norm used for the likelihood profile evaluation.
norm_n_values : int
Number of norm values used for the likelihood profile.
norm_values :
numpy.ndarray
Array of norm values to be used for the likelihood profile.
sigma : int
Sigma to use for asymmetric error computation.
sigma_ul : int
Sigma to use for upper limit computation.
Attributes Summary
ref_model
Methods Summary
estimate_flux_point
(e_group[, steps])Estimate flux point for a single energy group. estimate_norm
()Fit norm of the flux point. estimate_norm_err
()Estimate covariance errors for a flux point. estimate_norm_errn_errp
()Estimate asymmetric errors for a flux point. estimate_norm_scan
(flux_point)Estimate likelihood profile for the norm parameter estimate_norm_ts
()Estimate ts and sqrt(ts) for the flux point. estimate_norm_ul
()Estimate upper limit for a flux point. run
([steps])Run the flux point estimator for all energy groups. Attributes Documentation
-
ref_model
¶
Methods Documentation
-
estimate_flux_point
(e_group, steps='all')[source]¶ Estimate flux point for a single energy group.
Parameters: e_group :
SpectrumEnergyGroup
Energy group to compute the flux point for.
steps : list of str
Which steps to execute. Available options are:
- “err”: estimate symmetric error.
- “errn-errp”: estimate asymmetric errors.
- “ul”: estimate upper limits.
- “ts”: estimate ts and sqrt(ts) values.
- “norm-scan”: estimate likelihood profiles.
By default all steps are executed.
Returns: result : dict
Dict with results for the flux point.
-
estimate_norm
()[source]¶ Fit norm of the flux point.
Returns: result : dict
Dict with “norm” and “loglike” for the flux point.
-
estimate_norm_err
()[source]¶ Estimate covariance errors for a flux point.
Returns: result : dict
Dict with symmetric error for the flux point norm.
-
estimate_norm_errn_errp
()[source]¶ Estimate asymmetric errors for a flux point.
Returns: result : dict
Dict with asymmetric errors for the flux point norm.
-
estimate_norm_scan
(flux_point)[source]¶ Estimate likelihood profile for the norm parameter
Returns: result : dict
Dict with norm_scan and dloglike_scan for the flux point.
-
estimate_norm_ts
()[source]¶ Estimate ts and sqrt(ts) for the flux point.
Returns: result : dict
Dict with ts and srtq_ts for the flux point.
-
estimate_norm_ul
()[source]¶ Estimate upper limit for a flux point.
Returns: result : dict
Dict with upper limit for the flux point norm.
-
run
(steps='all')[source]¶ Run the flux point estimator for all energy groups.
Returns: flux_points :
FluxPoints
Estimated flux points.
steps : list of str
Which steps to execute. See
estimate_flux_point
for details and available options.
-