ADMB Documentation  11.1.2246
 All Classes Files Functions Variables Typedefs Friends Defines
Functions
Class and methods for cubic splines.

Functions

double * d3_np_fs (int n, const dvector &_a, const dvector &_b)
 factors and solves a D3 system.
dvar_vector d3_np_fs (int n, const dvar_vector &_a, const dvar_vector &_b)
 factors and solves a D3 system.
dvector spline (const dvector &_x, const dvector &_y, double yp1, double ypn)
 Cubic spline interpolation.
dvar_vector spline (const dvector &_x, const dvar_vector &_y, double yp1, double ypn)
 Cubic spline interpolation.
dvar_vector spline (const dvector &_x, const dvar_vector &_y, dvariable yp1, dvariable ypn)
 Cubic spline interpolation.
dvar_vector spline (const dvector &_x, const dvar_vector &_y, dvariable yp1, double ypn)
 Cubic spline interpolation.
dvector spline_cubic_set (int n, const dvector &t, const dvector &y, int ibcbeg, double ybcbeg, int ibcend, double ybcend)
 Computes the second derivatives of a piecewise cubic spline.
dvar_vector spline_cubic_set (int n, const dvector &t, const dvar_vector &y, int ibcbeg, dvariable ybcbeg, int ibcend, dvariable ybcend)
 Computes the second derivatives of a piecewise cubic spline.
double spline_cubic_val (int n, const dvector &t, double tval, const dvector &y, const dvector &ypp)
 Evaluates a piecewise cubic spline at a point.
dvariable spline_cubic_val (int n, const dvector &_t, double tval, const dvar_vector &_y, const dvar_vector &_ypp)
 Evaluates a piecewise cubic spline at a point.
dvariable spline_cubic_val2 (int n, const dvector &_t, const prevariable tval, const dvar_vector &_y, const dvar_vector &_ypp)
 Evaluates a piecewise cubic spline at a point.
double splint (const dvector &_xa, const dvector &_ya, const dvector &_y2a, double x)
 Cubic spline interpolation.
dvariable splint (const dvector &_xa, const dvar_vector &_ya, const dvar_vector &_y2a, double x)
 Cubic spline interpolation.
dvariable splint (const dvector &_xa, const dvar_vector &_ya, const dvar_vector &_y2a, const prevariable &_x)
 Cubic spline interpolation.

Function Documentation

double* d3_np_fs ( int  n,
const dvector _a,
const dvector _b 
)

factors and solves a D3 system.

Parameters:
nthe order of the linear system
_aOn input, the nonzero diagonals of the linear system
_bthe right hand side
Returns:
the solution of the linear system

Definition at line 244 of file cspline.cpp.

Referenced by spline_cubic_set().

dvar_vector d3_np_fs ( int  n,
const dvar_vector _a,
const dvar_vector _b 
)

factors and solves a D3 system.

Parameters:
nthe order of the linear system
_aOn input, the nonzero diagonals of the linear system
_bthe right hand side
Returns:
the solution of the linear system

Definition at line 525 of file vspline.cpp.

dvector spline ( const dvector _x,
const dvector _y,
double  yp1,
double  ypn 
)

Cubic spline interpolation.

Parameters:
_xarray of abscissa
_yarray of corresponding values $y_i=f(x_i)$
yp1value of the first derivative of $f$ at the left end point
ypnvalue of the first derivative of $f$ at the right end point
Returns:
an array containing the second derivatives

Definition at line 74 of file cspline.cpp.

Referenced by cubic_spline_function::cubic_spline_function(), splie2(), splin2(), and vcubic_spline_function::vcubic_spline_function().

dvar_vector spline ( const dvector _x,
const dvar_vector _y,
double  yp1,
double  ypn 
)

Cubic spline interpolation.

Parameters:
_xarray of abscissa
_yarray of corresponding values $y_i=f(x_i)$
yp1value of the first derivative of $f$ at the left end point
ypnvalue of the first derivative of $f$ at the right end point
Returns:
an array containing the second derivatives

Definition at line 184 of file vspline.cpp.

dvar_vector spline ( const dvector _x,
const dvar_vector _y,
dvariable  yp1,
dvariable  ypn 
)

Cubic spline interpolation.

Parameters:
_xarray of abscissa
_yarray of corresponding values $y_i=f(x_i)$
yp1value of the first derivative of $f$ at the left end point
ypnvalue of the first derivative of $f$ at the right end point
Returns:
an array containing the second derivatives

Definition at line 137 of file vspline.cpp.

dvar_vector spline ( const dvector _x,
const dvar_vector _y,
dvariable  yp1,
double  ypn 
)

Cubic spline interpolation.

Parameters:
_xarray of abscissa
_yarray of corresponding values $y_i=f(x_i)$
yp1value of the first derivative of $f$ at the left end point
ypnvalue of the first derivative of $f$ at the right end point
Returns:
an array containing the second derivatives

Definition at line 231 of file vspline.cpp.

dvector spline_cubic_set ( int  n,
const dvector t,
const dvector y,
int  ibcbeg,
double  ybcbeg,
int  ibcend,
double  ybcend 
)

Computes the second derivatives of a piecewise cubic spline.

Parameters:
nThe number of data points. $n$ must be at least 2. In the special case where $n = 2$ and ibcend = ibcend = 0, the spline will actually be linear.
tThe knot values. The knot values should be distinct, and increasing.
yThe data values to be interpolated
ibcbegThe left boundary flag, 0: the cubic spline should be a quadratic over the first interval; 1: the first derivative at the left endpoint should be ybcbeg; 2: the second derivative at the left endpoint should be ybcbeg.
ybcbegThe values to be used in the boundary conditions
ibcendThe right boundary flag, 0: the cubic spline should be a quadratic over the last interval; 1: the first derivative at the right endpoint should be YBCEND; 2: the second derivative at the right endpoint should be YBCEND.
ybcendthe values to be used in the boundary conditions
Returns:
the second derivatives of the cubic spline

Definition at line 358 of file cspline.cpp.

Referenced by spline().

dvar_vector spline_cubic_set ( int  n,
const dvector t,
const dvar_vector y,
int  ibcbeg,
dvariable  ybcbeg,
int  ibcend,
dvariable  ybcend 
)

Computes the second derivatives of a piecewise cubic spline.

Parameters:
nThe number of data points. $n$ must be at least 2. In the special case where $n = 2$ and ibcend = ibcend = 0, the spline will actually be linear.
tThe knot values. The knot values should be distinct, and increasing.
yThe data values to be interpolated
ibcbegThe left boundary flag, 0: the cubic spline should be a quadratic over the first interval; 1: the first derivative at the left endpoint should be ybcbeg; 2: the second derivative at the left endpoint should be ybcbeg.
ybcbegThe values to be used in the boundary conditions
ibcendThe right boundary flag, 0: the cubic spline should be a quadratic over the last interval; 1: the first derivative at the right endpoint should be YBCEND; 2: the second derivative at the right endpoint should be YBCEND.
ybcendthe values to be used in the boundary conditions
Returns:
the second derivatives of the cubic spline

Definition at line 638 of file vspline.cpp.

double spline_cubic_val ( int  n,
const dvector t,
double  tval,
const dvector y,
const dvector ypp 
)

Evaluates a piecewise cubic spline at a point.

Parameters:
nthe number of knots
tthe knot values
tvala point, typically between t[0] and t[N-1], at which the spline is to be evalulated. If tval lies outside this range, extrapolation is used.
ythe data values at the knots
yppthe second derivatives of the spline at the knots
Returns:
the value of the spline at tval

Definition at line 135 of file cspline.cpp.

Referenced by splint().

dvariable spline_cubic_val ( int  n,
const dvector _t,
double  tval,
const dvar_vector _y,
const dvar_vector _ypp 
)

Evaluates a piecewise cubic spline at a point.

Parameters:
nthe number of knots
tthe knot values
tvala point, typically between t[0] and t[N-1], at which the spline is to be evalulated. If tval lies outside this range, extrapolation is used.
ythe data values at the knots
yppthe second derivatives of the spline at the knots
Returns:
the value of the spline at tval

Definition at line 279 of file vspline.cpp.

dvariable spline_cubic_val2 ( int  n,
const dvector _t,
const prevariable  tval,
const dvar_vector _y,
const dvar_vector _ypp 
)

Evaluates a piecewise cubic spline at a point.

Parameters:
nthe number of knots
tthe knot values
tvala point, typically between t[0] and t[n-1], at which the spline is to be evalulated. If tval lies outside this range, extrapolation is used.
ythe data values at the knots
yppthe second derivatives of the spline at the knots
Returns:
the value of the spline at tval

Definition at line 404 of file vspline.cpp.

Referenced by splint().

double splint ( const dvector _xa,
const dvector _ya,
const dvector _y2a,
double  x 
)

Cubic spline interpolation.

Parameters:
_xaarray of abscissa
_yaarray of corresponding values $y_i=f(x_i)$
_y2aarray of 2nd derivatives computed from dvector spline()
xthe input coordinate to be used in the interpolation
Returns:
a cubic-spline interpolation to $f(x)$

Definition at line 117 of file cspline.cpp.

Referenced by vcubic_spline_function::operator()(), cubic_spline_function::operator()(), and splin2().

dvariable splint ( const dvector _xa,
const dvar_vector _ya,
const dvar_vector _y2a,
double  x 
)

Cubic spline interpolation.

Parameters:
_xaarray of abscissa
_yaarray of corresponding values $y_i=f(x_i)$
_y2aarray of 2nd derivatives computed from dvar_vector spline()
xthe input coordinate to be used in the interpolation
Returns:
a cubic-spline interpolation to $f(x)$

Definition at line 35 of file vspline.cpp.

dvariable splint ( const dvector _xa,
const dvar_vector _ya,
const dvar_vector _y2a,
const prevariable _x 
)

Cubic spline interpolation.

Parameters:
_xaarray of abscissa
_yaarray of corresponding values $y_i=f(x_i)$
_y2aarray of 2nd derivatives computed from dvar_vector spline()
xthe input coordinate to be used in the interpolation
Returns:
a cubic-spline interpolation to $f(x)$

Definition at line 53 of file vspline.cpp.