Parameter#
- class gammapy.modeling.Parameter(name, value, unit='', scale=1, min=nan, max=nan, frozen=False, error=0, scan_min=None, scan_max=None, scan_n_values=11, scan_n_sigma=2, scan_values=None, scale_method='scale10', interp='lin', prior=None)[source]#
Bases:
object
A model parameter.
Note that the parameter value has been split into a factor and scale like this:
value = factor x scale
Users should interact with the
value
,quantity
ormin
andmax
properties and consider the fact that there is afactor
andscale
an implementation detail.That was introduced for numerical stability in parameter and error estimation methods, only in the Gammapy optimiser interface do we interact with the
factor
,factor_min
andfactor_max
properties, i.e. the optimiser “sees” the well-scaled problem.- Parameters:
- namestr
Name.
- valuefloat or
Quantity
Value.
- scalefloat, optional
Scale (sometimes used in fitting).
- unit
Unit
or str, optional Unit.
- minfloat, str or
quantity
, optional Minimum (sometimes used in fitting). Default is None, which set the attribute to
np.nan
.- maxfloat, str or
quantity
, optional Maximum (sometimes used in fitting). Default is None, which set the attribute to
np.nan
.
- valuefloat or
- frozenbool, optional
Frozen (used in fitting).
- errorfloat
Parameter error.
- scan_minfloat
Minimum value for the parameter scan. Overwrites scan_n_sigma.
- scan_maxfloat
Maximum value for the parameter scan. Overwrites scan_n_sigma.
- scan_n_values: int
Number of values to be used for the parameter scan.
- scan_n_sigmaint
Number of sigmas to scan.
- scan_values:
numpy.array
Scan values. Overwrites all the scan keywords before.
- scale_method{‘scale10’, ‘factor1’, None}
Method used to set
factor
andscale
.- interp{“lin”, “sqrt”, “log”}
Parameter scaling to use for the scan.
- prior
Prior
Prior set on the parameter.
Attributes Summary
Confidence maximum value as a
float
.Confidence minimum value as a
float
.Factor as a float.
Factor maximum as a float.
Factor minimum as a float.
Frozen (used in fitting) (bool).
Maximum as a float.
Minimum as a float.
Name as a string.
Prior applied to the parameter as a
Prior
.Value times unit as a
Quantity
.Scale as a float.
Method used to set
factor
andscale
.Stat scan maximum.
Stat scan minimum.
Stat scan n sigma.
Stat scan values as a
ndarray
.Unit as a
Unit
object.Value = factor x scale (float).
Methods Summary
Autoscale the parameters.
Emit a warning or error if value is outside the minimum/maximum range.
copy
()Deep copy.
set_lim
([min, max])Set the min and/or max value for the parameter.
to_dict
()Convert to dictionary.
update_from_dict
(data)Update parameters from a dictionary.
Attributes Documentation
- conf_max#
Confidence maximum value as a
float
.Return parameter maximum if defined, otherwise return the scan_max.
- conf_min#
Confidence minimum value as a
float
.Return parameter minimum if defined, otherwise return the scan_min.
- error#
- factor#
Factor as a float.
- factor_max#
Factor maximum as a float.
This
factor_max = max / scale
is for the optimizer interface.
- factor_min#
Factor minimum as a float.
This
factor_min = min / scale
is for the optimizer interface.
- frozen#
Frozen (used in fitting) (bool).
- max#
Maximum as a float.
- min#
Minimum as a float.
- name#
Name as a string.
- scale#
Scale as a float.
- scale_method#
Method used to set
factor
andscale
.
- scan_max#
Stat scan maximum.
- scan_min#
Stat scan minimum.
- scan_n_sigma#
Stat scan n sigma.
- type#
- value#
Value = factor x scale (float).
Methods Documentation
- autoscale()[source]#
Autoscale the parameters.
Set
factor
andscale
according toscale_method
attribute.Available
scale_method
.scale10
setsscale
to power of 10, so that abs(factor) is in the range 1 to 10factor1
setsfactor, scale = 1, value
In both cases the sign of value is stored in
factor
, i.e. thescale
is always positive. Ifscale_method
is None the scaling is ignored.