bspline¶
-
class
pydl.pydlutils.bspline.
bspline
(x, nord=4, npoly=1, bkpt=None, bkspread=1.0, **kwargs)[source]¶ Bases:
object
B-spline class.
Functions in the idlutils bspline library are implemented as methods on this class.
Parameters: - x :
numpy.ndarray
The data.
- nord :
int
, optional The order of the B-spline. Default is 4, which is cubic.
- npoly :
int
, optional Polynomial order to fit over 2nd variable, if supplied. If not supplied the order is 1.
- bkpt :
numpy.ndarray
, optional To be documented.
- bkspread :
float
, optional To be documented.
Attributes: - breakpoints
To be documented.
- nord
To be documented.
- npoly
To be documented.
- mask
To be documented.
- coeff
To be documented.
- icoeff
To be documented.
- xmin
To be documented.
- xmax
To be documented.
- funcname
To be documented.
Init creates an object whose attributes are similar to the structure returned by the
create_bsplineset()
function.Methods Summary
action
(x[, x2])Construct banded B-spline matrix, with dimensions [ndata, bandwidth]. bsplvn
(x, ileft)Calculates the value of all possibly nonzero B-splines at x
of a certain order.fit
(xdata, ydata, invvar[, x2])Calculate a B-spline in the least-squares sense. intrv
(x)Find the segment between breakpoints which contain each value in the array x
.maskpoints
(err)Perform simple logic of which breakpoints to mask. value
(x[, x2, action, lower, upper])Evaluate a B-spline at specified values. Methods Documentation
-
action
(x, x2=None)[source]¶ Construct banded B-spline matrix, with dimensions [ndata, bandwidth].
Parameters: - x :
numpy.ndarray
Independent variable.
- x2 :
numpy.ndarray
, optional Orthogonal dependent variable for 2d fits.
Returns: - :func:`tuple`
A tuple containing the B-spline action matrix; the ‘lower’ parameter, a list of pixel positions, each corresponding to the first occurence of position greater than breakpoint indx; and ‘upper’, Same as lower, but denotes the upper pixel positions.
- x :
-
bsplvn
(x, ileft)[source]¶ Calculates the value of all possibly nonzero B-splines at
x
of a certain order.Parameters: - x :
numpy.ndarray
Independent variable.
- ileft :
int
Breakpoint segements that contain
x
.
Returns: - :class:`numpy.ndarray`
B-spline values.
- x :
-
fit
(xdata, ydata, invvar, x2=None)[source]¶ Calculate a B-spline in the least-squares sense.
Fit is based on two variables:
xdata
which is sorted and spans a large range where breakpoints are requiredydata
which can be described with a low order polynomial.Parameters: - xdata :
numpy.ndarray
Independent variable.
- ydata :
numpy.ndarray
Dependent variable.
- invvar :
numpy.ndarray
Inverse variance of
ydata
.- x2 :
numpy.ndarray
, optional Orthogonal dependent variable for 2d fits.
Returns: - :func:`tuple`
A tuple containing an integer error code, and the evaluation of the b-spline at the input values. An error code of -2 is a failure, -1 indicates dropped breakpoints, 0 is success, and positive integers indicate ill-conditioned breakpoints.
- xdata :
-
intrv
(x)[source]¶ Find the segment between breakpoints which contain each value in the array
x
.The minimum breakpoint is
nbkptord - 1
, and the maximum isnbkpt - nbkptord - 1
.Parameters: - x :
numpy.ndarray
Data values, assumed to be monotonically increasing.
Returns: - :class:`numpy.ndarray`
Position of array elements with respect to breakpoints.
- x :
-
maskpoints
(err)[source]¶ Perform simple logic of which breakpoints to mask.
Parameters: - err :
numpy.ndarray
The list of indexes returned by the cholesky routines.
Returns: - :class:`int`
An integer indicating the results of the masking. -1 indicates that the error points were successfully masked. -2 indicates failure; the calculation should be aborted.
Notes
The mask attribute is modified, assuming it is possible to create the mask.
- err :
-
value
(x, x2=None, action=None, lower=None, upper=None)[source]¶ Evaluate a B-spline at specified values.
Parameters: - x :
numpy.ndarray
Independent variable.
- x2 :
numpy.ndarray
, optional Orthogonal dependent variable for 2d fits.
- action :
numpy.ndarray
, optional Action matrix to use. If not supplied it is calculated.
- lower :
numpy.ndarray
, optional If the action parameter is supplied, this parameter must also be supplied.
- upper :
numpy.ndarray
, optional If the action parameter is supplied, this parameter must also be supplied.
Returns: - :func:`tuple`
A tuple containing the results of the bspline evaluation and a mask indicating where the evaluation was good.
- x :
- x :