Legendre2D#
- class astropy.modeling.polynomial.Legendre2D(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:
OrthoPolynomialBaseBivariate Legendre series.
Defined as:
\[P_{n_m}(x,y) = \sum_{n,m=0}^{n=d,m=d}C_{nm} L_n(x ) L_m(y)\]where
L_n(x)andL_m(y)are Legendre polynomials.For explanation of
x_domain,y_domain,x_windowandy_windowsee Notes regarding usage of domain and window.- Parameters:
 - x_degree
python:int degree in x
- y_degree
python:int degree in y
- x_domain
python:tupleorpython:None, optional domain of the x independent variable
- y_domain
python:tupleorpython:None, optional domain of the y independent variable
- x_window
python:tupleorpython:None, optional range of the x independent variable If None, it is set to (-1, 1) Fitters will remap the domain to this window
- y_window
python:tupleorpython:None, optional range of the y independent variable If None, it is set to (-1, 1) Fitters will remap the domain to this window
- **params
python:dict keyword: value pairs, representing parameter_name: value
- x_degree
 - Other Parameters:
 - fixed
python:dict, optional A dictionary
{parameter_name: boolean}of parameters to not be varied during fitting. True means the parameter is held fixed. Alternatively thefixedproperty of a parameter may be used.- tied
python: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 thetiedproperty of a parameter may be used.- bounds
python: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, theminandmaxproperties of a parameter may be used.- eqcons
python:list, optional A list of functions of length
nsuch thateqcons[j](x0,*args) == 0.0in a successfully optimized problem.- ineqcons
python:list, optional A list of functions of length
nsuch thatieqcons[j](x0,*args) >= 0.0is a successfully optimized problem.
- fixed
 
Notes
Model formula:
\[P(x) = \sum_{i=0}^{i=n}C_{i} * L_{i}(x)\]where
L_{i}is the corresponding Legendre polynomial.This model does not support the use of units/quantities, because each term in the sum of Legendre polynomials is a polynomial in x - since the coefficients within each Legendre polynomial are fixed, we can’t use quantities for x since the units would not be compatible. For example, the third Legendre polynomial (P2) is 1.5x^2-0.5, but if x was specified with units, 1.5x^2 and -0.5 would have incompatible units.
Methods Summary
fit_deriv(x, y, *params)Derivatives with respect to the coefficients.
Methods Documentation
- fit_deriv(x, y, *params)[source]#
 Derivatives with respect to the coefficients.
This is an array with Legendre polynomials:
Lx0Ly0 Lx1Ly0…LxnLy0…LxnLym
- Parameters:
 - x
ndarray input
- y
ndarray input
- *params
 throw-away parameter list returned by non-linear fitters
- x
 - Returns:
 - result
ndarray The Vandermonde matrix
- result