Model

class sherpa.models.model.Model(name, pars=())[source]

Bases: sherpa.utils.NoNewAttributesAfterInit

The base class for Sherpa models.

A model contains zero or more parameters that control the predictions of the model when given one or more coordinates. These parameters may represent some variable that describes the model, such as the temperature of a black body, or the computation, such as what form of interpolation to use.

Parameters:
  • name (str) – A label for the model instance.
  • pars (sequence of sherpa.parameter.Parameter objects) – The parameters of the model.
name

str – The name given to the instance.

pars

tuple of sherpa.parameter.Parameter objects – The parameters of the model instance.

Notes

Parameters can be accessed via the pars attribute, but it is expected that they will generally be accessed directly, as the class provides case-insensitive access to the parameter names as object attributes. That is, if the model contains parameters called breakFreq and norm, and the instance is stored in the variable mdl, then the following can be used to access the parameters:

print("Break frequency = {}".format(mdl.breakfreq))

mdl.norm = 1.2e-3

Attributes Summary

thawedparhardmaxes
thawedparhardmins
thawedparmaxes
thawedparmins
thawedpars

Methods Summary

calc(p, \*args, \*\*kwargs) Evaluate the model on a grid.
get_center()
guess(dep, \*args, \*\*kwargs) Set an initial guess for the parameter values.
reset()
set_center(\*args, \*\*kwargs)
startup() Called before a model may be evaluated multiple times.
teardown() Called after a model may be evaluated multiple times.

Attributes Documentation

thawedparhardmaxes
thawedparhardmins
thawedparmaxes
thawedparmins
thawedpars

Methods Documentation

calc(p, *args, **kwargs)[source]

Evaluate the model on a grid.

Parameters:
  • p (sequence of numbers) – The parameter values to use. The order matches the pars field.
  • *args – The model grid. The values can be scalar or arrays, and the number depends on the dimensionality of the model and whether it is being evaluated over an integrated grid or at a point (or points).
get_center()[source]
guess(dep, *args, **kwargs)[source]

Set an initial guess for the parameter values.

Attempt to set the parameter values, and ranges, for the model to match the data values. This is intended as a rough guess, so it is expected that the model is only evaluated a small number of times, if at all.

reset()[source]
set_center(*args, **kwargs)[source]
startup()[source]

Called before a model may be evaluated multiple times.

See also

teardown()

teardown()[source]

Called after a model may be evaluated multiple times.

See also

setup()