OrthoPolynomialBase#

class astropy.modeling.polynomial.OrthoPolynomialBase(x_degree, y_degree, x_domain=None, x_window=None, y_domain=None, y_window=None, n_models=None, model_set_axis=None, name=None, meta=None, **params)[source]#

Bases: PolynomialBase

This is a base class for the 2D Chebyshev and Legendre models.

The polynomials implemented here require a maximum degree in x and y.

For explanation of x_domain, y_domain, `x_window and `y_window see Notes regarding usage of domain and window.

Parameters:
x_degreepython:int

degree in x

y_degreepython:int

degree in y

x_domainpython:tuple or python:None, optional

domain of the x independent variable

x_windowpython:tuple or python:None, optional

range of the x independent variable

y_domainpython:tuple or python:None, optional

domain of the y independent variable

y_windowpython:tuple or python:None, optional

range of the y independent variable

**paramspython:dict

{keyword: value} pairs, representing {parameter_name: value}

Attributes Summary

Methods Summary

__call__(*inputs[, model_set_axis, ...])

Evaluate this model using the given input(s) and the parameter values that were specified when the model was instantiated.

evaluate(x, y, *coeffs)

Evaluate the model on some input variables.

get_num_coeff()

Determine how many coefficients are needed.

imhorner(x, y, coeff)

invlex_coeff(coeffs)

prepare_inputs(x, y, **kwargs)

This method is used in __call__ to ensure that all the inputs to the model can be broadcast into compatible shapes (if one or both of them are input as arrays), particularly if there are more than one parameter sets.

Attributes Documentation

n_inputs = 2#
n_outputs = 1#
x_domain#
x_window#
y_domain#
y_window#

Methods Documentation

__call__(*inputs, model_set_axis=None, with_bounding_box=False, fill_value=nan, equivalencies=None, inputs_map=None, **new_inputs)#

Evaluate this model using the given input(s) and the parameter values that were specified when the model was instantiated.

evaluate(x, y, *coeffs)[source]#

Evaluate the model on some input variables.

get_num_coeff()[source]#

Determine how many coefficients are needed.

Returns:
numcpython:int

number of coefficients

imhorner(x, y, coeff)[source]#
invlex_coeff(coeffs)[source]#
prepare_inputs(x, y, **kwargs)[source]#

This method is used in __call__ to ensure that all the inputs to the model can be broadcast into compatible shapes (if one or both of them are input as arrays), particularly if there are more than one parameter sets. This also makes sure that (if applicable) the units of the input will be compatible with the evaluate method.