FluxPointsDataset¶
-
class
gammapy.spectrum.FluxPointsDataset(models, data, mask_fit=None, mask_safe=None, name=None)[source]¶ Bases:
gammapy.modeling.DatasetFit a set of flux points with a parametric model.
- Parameters
- models
Models Models (only spectral part needs to be set)
- data
FluxPoints Flux points.
- mask_fit
numpy.ndarray Mask to apply for fitting
- mask_safe
numpy.ndarray Mask defining the safe data range.
- models
Examples
Load flux points from file and fit with a power-law model:
from gammapy.modeling import Fit from gammapy.modeling.models import PowerLawSpectralModel, SkyModel from gammapy.spectrum import FluxPoints, FluxPointsDataset filename = "$GAMMAPY_DATA/tests/spectrum/flux_points/diff_flux_points.fits" flux_points = FluxPoints.read(filename) model = SkyModel(spectral_model=PowerLawSpectralModel()) dataset = FluxPointsDataset(model, flux_points) fit = Fit([dataset]) result = fit.run() print(result) print(result.parameters.to_table())
Note: In order to reproduce the example you need the tests datasets folder. You may download it with the command
gammapy download datasets --tests --out $GAMMAPY_DATAAttributes Summary
Combined fit and safe mask
List of parameters (
Parameters)Methods Summary
copy(self[, name])A deep copy.
data_shape(self)Shape of the flux points data (tuple).
flux_pred(self)Compute predicted flux.
from_dict(data, components, models)Create flux point dataset from dict.
peek(self[, method])Plot flux points, best fit model and residuals.
plot_residuals(self[, ax, method])Plot flux point residuals.
plot_spectrum(self[, ax, fp_kwargs, …])Plot spectrum including flux points and model.
residuals(self[, method])Compute the flux point residuals ().
stat_array(self)Fit statistic array.
stat_sum(self)Total statistic given the current model parameters.
to_dict(self[, filename])Convert to dict for YAML serialization.
write(self, filename[, overwrite])Write flux point dataset to file.
Attributes Documentation
-
mask¶ Combined fit and safe mask
-
models¶
-
name¶
-
parameters¶ List of parameters (
Parameters)
-
stat_type= 'chi2'¶
-
tag= 'FluxPointsDataset'¶
Methods Documentation
-
copy(self, name=None)¶ A deep copy.
-
classmethod
from_dict(data, components, models)[source]¶ Create flux point dataset from dict.
- Parameters
- datadict
Dict containing data to create dataset from.
- componentslist of dict
Not used.
- modelslist of
SkyModel List of model components.
- Returns
- dataset
FluxPointsDataset Flux point datasets.
- dataset
-
peek(self, method='diff/model', **kwargs)[source]¶ Plot flux points, best fit model and residuals.
- Parameters
- method{“diff”, “diff/model”, “diff/sqrt(model)”}
Method used to compute the residuals, see
MapDataset.residuals()
-
plot_residuals(self, ax=None, method='diff', **kwargs)[source]¶ Plot flux point residuals.
- Parameters
- ax
Axes Axes object.
- method{“diff”, “diff/model”, “diff/sqrt(model)”}
Method used to compute the residuals, see
MapDataset.residuals()- **kwargsdict
Keyword arguments passed to
errorbar.
- ax
- Returns
- ax
Axes Axes object.
- ax
-
plot_spectrum(self, ax=None, fp_kwargs=None, model_kwargs=None)[source]¶ Plot spectrum including flux points and model.
- Parameters
- ax
Axes Axes object.
- fp_kwargsdict
Keyword arguments passed to
FluxPoints.plot.- model_kwargsdict
Keywords passed to
SpectralModel.plotandSpectralModel.plot_error
- ax
- Returns
- ax
Axes Axes object.
- ax
-
residuals(self, method='diff')[source]¶ Compute the flux point residuals ().
- Parameters
- method: {“diff”, “diff/model”, “diff/sqrt(model)”}
- Method used to compute the residuals. Available options are:
diff(default): data - modeldiff/model: (data - model) / modeldiff/sqrt(model): (data - model) / sqrt(model)norm='sqrt_model'for: (flux points - model)/sqrt(model)
- Returns
- residuals
ndarray Residuals array.
- residuals
-
stat_sum(self)¶ Total statistic given the current model parameters.