PiecewiseNormSpatialModel#

class gammapy.modeling.models.PiecewiseNormSpatialModel(coords, norms=None, interp='lin', **kwargs)[source]#

Bases: gammapy.modeling.models.spatial.SpatialModel

Piecewise spatial correction with a free normalization at each fixed nodes.

For more information see Piecewise norm spatial model.

Parameters
coordgammapy.maps.MapCoord

Flat coordinates list at which the model values are given (nodes).

normsndarray or list of Parameter

Array with the initial norms of the model at energies energy. Normalisation parameters are created for each value. Default is one at each node.

interp{“lin”, “log”}

Interpolation scaling. Default is “lin”.

Attributes Summary

coords

Energy nodes.

covariance

default_parameters

evaluation_bin_size_min

evaluation_radius

Evaluation radius.

evaluation_region

Evaluation region.

frozen

Frozen status of a model, True if all parameters are frozen.

is_energy_dependent

norms

Norm values.

parameters

Parameters as a Parameters object.

phi_0

position

Spatial model center position as a SkyCoord.

position_error

Get 95% containment position error as EllipseSkyRegion.

position_lonlat

Spatial model center position (lon, lat) in radians and frame of the model.

tag

type

Methods Summary

__call__(lon, lat[, energy])

Call evaluate method.

copy(**kwargs)

Deep copy.

evaluate(lon, lat[, energy])

Evaluate the model at given coordinates.

evaluate_geom(geom)

Evaluate model on Geom.

freeze()

Freeze all parameters.

from_dict(data)

Create model from dictionary.

from_parameters(parameters, **kwargs)

Create model from parameters.

from_position(position, **kwargs)

Define the position of the model using a SkyCoord.

integrate_geom(geom[, oversampling_factor])

Integrate model on Geom or RegionGeom.

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.

unfreeze()

Restore parameters frozen status to default.

Attributes Documentation

coords#

Energy nodes.

covariance#
default_parameters = <gammapy.modeling.parameter.Parameters object>#
evaluation_bin_size_min#
evaluation_radius#

Evaluation radius.

evaluation_region#

Evaluation region.

frozen#

Frozen status of a model, True if all parameters are frozen.

is_energy_dependent#
norms#

Norm values.

parameters#

Parameters as a Parameters object.

phi_0#
position#

Spatial model center position as a SkyCoord.

position_error#

Get 95% containment position error as EllipseSkyRegion.

position_lonlat#

Spatial model center position (lon, lat) in radians and frame of the model.

tag = ['PiecewiseNormSpatialModel', 'piecewise-norm']#
type#

Methods Documentation

__call__(lon, lat, energy=None)#

Call evaluate method.

copy(**kwargs)#

Deep copy.

evaluate(lon, lat, energy=None, **norms)[source]#

Evaluate the model at given coordinates.

evaluate_geom(geom)[source]#

Evaluate model on Geom.

Parameters
geomWcsGeom

Map geometry.

Returns
mapMap

Map containing the value in each spatial bin.

freeze()#

Freeze all parameters.

classmethod from_dict(data)[source]#

Create model from dictionary.

classmethod from_parameters(parameters, **kwargs)[source]#

Create model from parameters.

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
positionSkyCoord

Position.

Returns
modelSpatialModel

Spatial model.

integrate_geom(geom, oversampling_factor=None)#

Integrate model on Geom or RegionGeom.

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
geomWcsGeom or RegionGeom

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.

Returns
mapMap or gammapy.maps.RegionNDMap

Map containing the integral value in each spatial bin.

plot(ax=None, geom=None, **kwargs)#

Plot spatial model.

Parameters
axAxes, optional

Matplotlib axes. Default is None.

geomWcsGeom, optional

Geometry to use for plotting. Default is None.

**kwargsdict

Keyword arguments passed to plot().

Returns
axAxes, optional

Matplotlib axes.

plot_error(ax=None, which='position', kwargs_position=None, kwargs_extension=None)#

Plot the errors of the spatial model.

Parameters
axAxes, 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.

Returns
axAxes, optional

Matplotlib axes.

plot_grid(geom=None, **kwargs)#

Plot spatial model energy slices in a grid.

Parameters
geomWcsGeom, optional

Geometry to use for plotting. Default is None.

**kwargsdict

Keyword arguments passed to plot().

Returns
axAxes, optional

Matplotlib axes.

plot_interactive(ax=None, geom=None, **kwargs)#

Plot spatial model.

Parameters
axAxes, optional

Matplotlib axes. Default is None.

geomWcsGeom, optional

Geom to use for plotting. Default is None.

**kwargsdict

Keyword arguments passed to plot().

Returns
axAxes, optional

Matplotlib axes.

plot_position_error(ax=None, **kwargs)#

Plot position error.

Parameters
axAxes, optional

Matplotlib axes to plot the position error on. Default is None.

**kwargsdict

Keyword arguments passed to plot().

Returns
axAxes, optional

Matplotlib axes.

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
modelModel

Reassigned model.

to_dict(full_output=False)[source]#

Create dictionary for YAML serilisation.

unfreeze()#

Restore parameters frozen status to default.