Chebyshev2D¶
- class astropy.modeling.polynomial.Chebyshev2D(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:
OrthoPolynomialBase
Bivariate Chebyshev series..
It is defined as
\[P_{nm}(x,y) = \sum_{n,m=0}^{n=d,m=d}C_{nm} T_n(x ) T_m(y)\]where
T_n(x)
andT_m(y)
are Chebyshev polynomials of the first kind.For explanation of
x_domain
,y_domain
,x_window
andy_window
see 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:tuple
orpython:None
, optional domain of the x independent variable
- y_domain
python:tuple
orpython:None
, optional domain of the y independent variable
- x_window
python:tuple
orpython: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:tuple
orpython: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
a
python:dict
, optional A dictionary
{parameter_name: boolean}
of parameters to not be varied during fitting. True means the parameter is held fixed. Alternatively thefixed
property 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 thetied
property 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, themin
andmax
properties of a parameter may be used.- eqcons
python:list
, optional A list of functions of length
n
such thateqcons[j](x0,*args) == 0.0
in a successfully optimized problem.- ineqcons
python:list
, optional A list of functions of length
n
such thatieqcons[j](x0,*args) >= 0.0
is a successfully optimized problem.
- fixed
Notes
This model does not support the use of units/quantities, because each term in the sum of Chebyshev polynomials is a polynomial in x and/or y - since the coefficients within each Chebyshev polynomial are fixed, we can’t use quantities for x and/or y since the units would not be compatible. For example, the third Chebyshev polynomial (T2) is 2x^2-1, but if x was specified with units, 2x^2 and -1 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 Chebyshev polynomials:
\[T_{x_0}T_{y_0}, T_{x_1}T_{y_0}...T_{x_n}T_{y_0}...T_{x_n}T_{y_m}\]- 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