Box2D

class astropy.modeling.functional_models.Box2D(amplitude=1, x_0=0, y_0=0, x_width=1, y_width=1, **kwargs)[source]

Bases: Fittable2DModel

Two dimensional Box model.

Parameters:
amplitudepython:float

Amplitude

x_0python:float

x position of the center of the box function

x_widthpython:float

Width in x direction of the box

y_0python:float

y position of the center of the box function

y_widthpython:float

Width in y direction of the box

Other Parameters:
fixeda python:dict, optional

A dictionary {parameter_name: boolean} of parameters to not be varied during fitting. True means the parameter is held fixed. Alternatively the fixed property of a parameter may be used.

tiedpython:dict, optional

A dictionary {parameter_name: callable} of parameters which are linked to some other parameter. The dictionary values are callables providing the linking relationship. Alternatively the tied property of a parameter may be used.

boundspython:dict, optional

A dictionary {parameter_name: value} of lower and upper bounds of parameters. Keys are parameter names. Values are a list or a tuple of length 2 giving the desired range for the parameter. Alternatively, the min and max properties of a parameter may be used.

eqconspython:list, optional

A list of functions of length n such that eqcons[j](x0,*args) == 0.0 in a successfully optimized problem.

ineqconspython:list, optional

A list of functions of length n such that ieqcons[j](x0,*args) >= 0.0 is a successfully optimized problem.

Notes

Model formula:

\[\begin{split}f(x, y) = \left \{ \begin{array}{ll} A : & x_0 - w_x/2 \leq x \leq x_0 + w_x/2 \text{ and} \\ & y_0 - w_y/2 \leq y \leq y_0 + w_y/2 \\ 0 : & \text{else} \end{array} \right.\end{split}\]

Attributes Summary

amplitude

input_units

This property is used to indicate what units or sets of units the evaluate method expects, and returns a dictionary mapping inputs to units (or None if any units are accepted).

param_names

Names of the parameters that describe models of this type.

x_0

x_width

y_0

y_width

Methods Summary

evaluate(x, y, amplitude, x_0, y_0, x_width, ...)

Two dimensional Box model function

Attributes Documentation

amplitude = Parameter('amplitude', value=1.0)
input_units
param_names = ('amplitude', 'x_0', 'y_0', 'x_width', 'y_width')

Names of the parameters that describe models of this type.

The parameters in this tuple are in the same order they should be passed in when initializing a model of a specific type. Some types of models, such as polynomial models, have a different number of parameters depending on some other property of the model, such as the degree.

When defining a custom model class the value of this attribute is automatically set by the Parameter attributes defined in the class body.

x_0 = Parameter('x_0', value=0.0)
x_width = Parameter('x_width', value=1.0)
y_0 = Parameter('y_0', value=0.0)
y_width = Parameter('y_width', value=1.0)

Methods Documentation

static evaluate(x, y, amplitude, x_0, y_0, x_width, y_width)[source]

Two dimensional Box model function