GeneralizedGaussianSpatialModel#
- class gammapy.modeling.models.GeneralizedGaussianSpatialModel(**kwargs)[source]#
Bases:
gammapy.modeling.models.spatial.SpatialModel
Two-dimensional Generalized Gaussian model.
For more information see Generalized gaussian spatial model.
- Parameters
- lon_0, lat_0
Angle
Center position. Default is “0 deg”, “0 deg”.
- r_0
Angle
Length of the major semiaxis, in angular units. Default is 1 deg.
- eta
float
Shape parameter within (0, 1). Special cases for disk: ->0, Gaussian: 0.5, Laplace:1 Default is 0.5.
- e
float
Eccentricity (\(0< e< 1\)). Default is 0.
- phi
Angle
Rotation angle \(\phi\): of the major semiaxis. Increases counter-clockwise from the North direction. Default is 0 deg.
- frame{“icrs”, “galactic”}
Center position coordinate frame.
- lon_0, lat_0
Attributes Summary
A model parameter.
A model parameter.
Minimal evaluation bin size as an
Angle
.Evaluation radius as an
Angle
.Evaluation region consistent with evaluation radius.
Frozen status of a model, True if all parameters are frozen.
A model parameter.
A model parameter.
Parameters as a
Parameters
object.A model parameter.
Spatial model center position as a
SkyCoord
.Get 95% containment position error as
EllipseSkyRegion
.Spatial model center position
(lon, lat)
in radians and frame of the model.A model parameter.
Methods Summary
__call__
(lon, lat[, energy])Call evaluate method.
copy
(**kwargs)Deep copy.
evaluate
(lon, lat, lon_0, lat_0, r_0, eta, ...)evaluate_geom
(geom)Evaluate model on
Geom
.freeze
()Freeze all parameters.
from_dict
(data, **kwargs)Create a spatial model from a dictionary.
from_parameters
(parameters, **kwargs)Create model from parameter list.
from_position
(position, **kwargs)Define the position of the model using a
SkyCoord
.integrate_geom
(geom[, oversampling_factor])Integrate model on
Geom
orRegionGeom
.plot
([ax, geom])Plot spatial model.
plot_error
([ax, which, kwargs_position, ...])Plot the errors of the spatial model.
plot_grid
([geom])Plot spatial model energy slices in a grid.
plot_interactive
([ax, geom])Plot spatial model.
plot_position_error
([ax])Plot position error.
reassign
(datasets_names, new_datasets_names)Reassign a model from one dataset to another.
to_dict
([full_output])Create dictionary for YAML serilisation.
to_region
([x_r_0])Model outline at a given number of \(r_0\).
unfreeze
()Restore parameters frozen status to default.
Attributes Documentation
- covariance#
- default_parameters = <gammapy.modeling.parameter.Parameters object>#
- e#
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, optional
Minimum (sometimes used in fitting).
- maxfloat, optional
Maximum (sometimes used in fitting).
- frozenbool, optional
Frozen (used in fitting).
- errorfloat
Parameter error.
- scan_minfloat
Minimum value for the parameter scan. Overwrites scan_n_sigma.
- scan_maxfloat
Minimum 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.
- is_normbool
Whether the parameter represents the flux norm of the model.
- prior
Prior
Prior set on the parameter.
- eta#
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, optional
Minimum (sometimes used in fitting).
- maxfloat, optional
Maximum (sometimes used in fitting).
- frozenbool, optional
Frozen (used in fitting).
- errorfloat
Parameter error.
- scan_minfloat
Minimum value for the parameter scan. Overwrites scan_n_sigma.
- scan_maxfloat
Minimum 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.
- is_normbool
Whether the parameter represents the flux norm of the model.
- prior
Prior
Prior set on the parameter.
- evaluation_bin_size_min#
Minimal evaluation bin size as an
Angle
.The bin min size is defined as r_0/(3+8*eta)/(e+1).
- evaluation_radius#
Evaluation radius as an
Angle
.The evaluation radius is defined as r_eval = r_0*(1+8*eta) so it verifies: r_eval -> r_0 if eta -> 0 r_eval = 5*r_0 > 5*sigma_gauss = 5*r_0/sqrt(2) ~ 3.5*r_0 if eta=0.5 r_eval = 9*r_0 > 5*sigma_laplace = 5*sqrt(2)*r_0 ~ 7*r_0 if eta = 1 r_eval -> inf if eta -> inf
- evaluation_region#
Evaluation region consistent with evaluation radius.
- frozen#
Frozen status of a model, True if all parameters are frozen.
- is_energy_dependent#
- lat_0#
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, optional
Minimum (sometimes used in fitting).
- maxfloat, optional
Maximum (sometimes used in fitting).
- frozenbool, optional
Frozen (used in fitting).
- errorfloat
Parameter error.
- scan_minfloat
Minimum value for the parameter scan. Overwrites scan_n_sigma.
- scan_maxfloat
Minimum 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.
- is_normbool
Whether the parameter represents the flux norm of the model.
- prior
Prior
Prior set on the parameter.
- lon_0#
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, optional
Minimum (sometimes used in fitting).
- maxfloat, optional
Maximum (sometimes used in fitting).
- frozenbool, optional
Frozen (used in fitting).
- errorfloat
Parameter error.
- scan_minfloat
Minimum value for the parameter scan. Overwrites scan_n_sigma.
- scan_maxfloat
Minimum 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.
- is_normbool
Whether the parameter represents the flux norm of the model.
- prior
Prior
Prior set on the parameter.
- parameters#
Parameters as a
Parameters
object.
- phi#
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, optional
Minimum (sometimes used in fitting).
- maxfloat, optional
Maximum (sometimes used in fitting).
- frozenbool, optional
Frozen (used in fitting).
- errorfloat
Parameter error.
- scan_minfloat
Minimum value for the parameter scan. Overwrites scan_n_sigma.
- scan_maxfloat
Minimum 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.
- is_normbool
Whether the parameter represents the flux norm of the model.
- prior
Prior
Prior set on the parameter.
- phi_0#
- position_error#
Get 95% containment position error as
EllipseSkyRegion
.
- position_lonlat#
Spatial model center position
(lon, lat)
in radians and frame of the model.
- r_0#
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, optional
Minimum (sometimes used in fitting).
- maxfloat, optional
Maximum (sometimes used in fitting).
- frozenbool, optional
Frozen (used in fitting).
- errorfloat
Parameter error.
- scan_minfloat
Minimum value for the parameter scan. Overwrites scan_n_sigma.
- scan_maxfloat
Minimum 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.
- is_normbool
Whether the parameter represents the flux norm of the model.
- prior
Prior
Prior set on the parameter.
- tag = ['GeneralizedGaussianSpatialModel', 'gauss-general']#
- type#
Methods Documentation
- __call__(lon, lat, energy=None)#
Call evaluate method.
- copy(**kwargs)#
Deep copy.
- freeze()#
Freeze all parameters.
- classmethod from_dict(data, **kwargs)#
Create a spatial model from a dictionary.
- Parameters
- datadict
Dictionary containing model parameters.
- kwargsdict
Keyword arguments passed to
from_parameters
.
- classmethod from_parameters(parameters, **kwargs)#
Create model from parameter list.
- Parameters
- parameters
Parameters
Parameters for init.
- parameters
- Returns
- model
Model
Model instance.
- model
- classmethod from_position(position, **kwargs)#
Define the position of the model using a
SkyCoord
.The model will be created in the frame of the
SkyCoord
.- Parameters
- position
SkyCoord
Position.
- position
- Returns
- model
SpatialModel
Spatial model.
- model
- integrate_geom(geom, oversampling_factor=None)#
Integrate model on
Geom
orRegionGeom
.Integration is performed by simple rectangle approximation, the pixel center model value is multiplied by the pixel solid angle. An oversampling factor can be used for precision. By default, this parameter is set to None and an oversampling factor is automatically estimated based on the model estimation maximal bin width.
For a RegionGeom, the model is integrated on a tangent WCS projection in the region.
- Parameters
- geom
WcsGeom
orRegionGeom
The geom on which the integration is performed.
- oversampling_factorint or None
The oversampling factor to use for integration. Default is None: the factor is estimated from the model minimal bin size.
- geom
- Returns
- map
Map
orgammapy.maps.RegionNDMap
Map containing the integral value in each spatial bin.
- map
- plot(ax=None, geom=None, **kwargs)#
Plot spatial model.
- plot_error(ax=None, which='position', kwargs_position=None, kwargs_extension=None)#
Plot the errors of the spatial model.
- Parameters
- ax
Axes
, optional Matplotlib axes to plot the errors on. Default is None.
- which: list of str
Which errors to plot. Available options are:
“all”: all the optional steps are plotted
“position”: plot the position error of the spatial model
“extension”: plot the extension error of the spatial model
- kwargs_positiondict, optional
Keyword arguments passed to
plot_position_error
. Default is None.- kwargs_extensiondict, optional
Keyword arguments passed to
plot_extension_error
. Default is None.
- ax
- Returns
- ax
Axes
, optional Matplotlib axes.
- ax
- plot_grid(geom=None, **kwargs)#
Plot spatial model energy slices in a grid.
- plot_interactive(ax=None, geom=None, **kwargs)#
Plot spatial model.
- plot_position_error(ax=None, **kwargs)#
Plot position error.
- reassign(datasets_names, new_datasets_names)#
Reassign a model from one dataset to another.
- Parameters
- datasets_namesstr or list
Name of the datasets where the model is currently defined.
- new_datasets_namesstr or list
Name of the datasets where the model should be defined instead. If multiple names are given the two list must have the save length, as the reassignment is element-wise.
- Returns
- model
Model
Reassigned model.
- model
- to_dict(full_output=False)#
Create dictionary for YAML serilisation.
- to_region(x_r_0=1, **kwargs)[source]#
Model outline at a given number of \(r_0\).
- Parameters
- x_r_0float, optional
Number of \(r_0\). Default is 1.
- Returns
- region
EllipseSkyRegion
Model outline.
- region
- unfreeze()#
Restore parameters frozen status to default.