Fit¶
-
class
gammapy.utils.fitting.
Fit
[source]¶ Bases:
object
Abstract Fit base class.
Methods Summary
likelihood_profile
(model, parameter[, …])Compute likelihood profile for a single parameter of the model. likelihood_profiles
(model[, parameters])Compute likelihood profiles for multiple parameters. optimize
([backend])Run the optimization run
([steps, optimize_opts, profile_opts])Run all fitting steps. total_stat
(parameters)Total likelihood given the current model parameters Methods Documentation
-
likelihood_profile
(model, parameter, values=None, bounds=2, nvalues=11)[source]¶ Compute likelihood profile for a single parameter of the model.
Parameters: model :
SpectralModel
Model to compute the likelihood profile for.
parameter : str
Parameter to calculate profile for
values :
Quantity
(optional)Parameter values to evaluate the likelihood for.
bounds : int or tuple of float
When an
int
is passed the bounds are computed frombounds * sigma
from the best fit value of the parameter, wheresigma
corresponds to the one sigma error on the parameter. If a tuple of floats is given those are taken as the min and max values andnvalues
are linearly spaced between those.nvalues : int
Number of parameter grid points to use.
Returns: likelihood_profile : dict
Dict of parameter values and likelihood values.
-
likelihood_profiles
(model, parameters='all')[source]¶ Compute likelihood profiles for multiple parameters.
Parameters: model :
SpectralModel
orSkyModel
Model to compute the likelihood profile for.
parameters : list of str or “all”
For which parameters to compute likelihood profiles.
-
optimize
(backend='minuit', **kwargs)[source]¶ Run the optimization
Parameters: backend : {“minuit”, “sherpa”}
Which fitting backend to use.
**kwargs : dict
Keyword arguments passed to the optimizer. For the
"minuit"
backend see https://iminuit.readthedocs.io/en/latest/api.html#iminuit.Minuit for a detailed description of the available options. For the"sherpa"
backend you can from the optionsmethod = {"simplex", "levmar", "moncar", "gridsearch"}
Those methods are described and compared in detail on http://cxc.cfa.harvard.edu/sherpa/methods/index.html. The available options of the optimization methods are described on the following pages in detail:Returns: fit_result :
dict
Optimize info dict with the best fit model and additional information.
-
run
(steps='all', optimize_opts=None, profile_opts=None)[source]¶ Run all fitting steps.
Parameters: steps : {“all”, “optimize”, “errors”, “profiles”}
Which fitting steps to run.
optimize_opts : dict
Options passed to
Fit.optimize
.profile_opts : dict
Options passed to
Fit.likelihood_profiles
.Returns: fit_result :
FitResult
Fit result object with the best fit model and additional information.
-