Box1D

class sherpa.models.basic.Box1D(name='box1d')[source] [edit on github]

Bases: sherpa.models.model.RegriddableModel1D

One-dimensional box function.

The model is flat between xlow and xhi (both limits are inclusive), where it is set to the ampl parameter. Outside this range the model is zero.

xlow

Coordinate of the lower cut-off.

xhi

Coordinate of the upper cut-off.

ampl

The amplitude of the box.

Notes

The functional form of the model for points is:

f(x) = ampl if xlow <= x <= xhi
     = 0       otherwise

and for an integrated grid it is:

f(lo,hi) = ampl         if lo >= xlow and hi <= xhi
         = 0            if hi <= xlow or lo >= xhi
         = ampl * g     where g is the fraction of lo,hi
                        that falls within xlo,xhi

This behavior is different to how the amplitude is handled in other models, such as Const1D.

Attributes Summary

thawedparhardmaxes
thawedparhardmins
thawedparmaxes
thawedparmins
thawedpars

Methods Summary

apply(outer, *otherargs, **otherkwargs)
calc(pars, xlo, *args, **kwargs)
get_center()
guess(dep, *args, **kwargs) Set an initial guess for the parameter values.
regrid(*arrays, **kwargs) The class RegriddableModel1D allows the user to evaluate in the requested space then interpolate onto the data space.
reset()
set_center(*args, **kwargs)
startup(cache) 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

apply(outer, *otherargs, **otherkwargs) [edit on github]
calc(pars, xlo, *args, **kwargs) [edit on github]
get_center() [edit on github]
guess(dep, *args, **kwargs)[source] [edit on github]

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.

regrid(*arrays, **kwargs) [edit on github]

The class RegriddableModel1D allows the user to evaluate in the requested space then interpolate onto the data space. An optional argument ‘interp’ enables the user to change the interpolation method.

Examples

>>> import numpy as np
>>> from sherpa.models.basic import Box1D
>>> mybox = Box1D()
>>> request_space = np.arange(1, 10, 0.1)
>>> regrid_model = mybox.regrid(request_space, interp=linear_interp)
reset() [edit on github]
set_center(*args, **kwargs) [edit on github]
startup(cache) [edit on github]

Called before a model may be evaluated multiple times.

See also

teardown()

teardown() [edit on github]

Called after a model may be evaluated multiple times.

See also

setup()