Next: , Previous: Bspline_eval, Up: Library Routines


4.8 Bspline_eval_derivs

Bspline_eval_derivs – The evaluation of s(t,z) and the derivative with respect to t and z from its normalized B-spline representation. This function is an optimized version of the function BsplineAlgo_c_derivs.

Synopsis

     #include <BsplineEval/bsplineval.h>
     #include <BsplineEval/spline_coef.h>
     
     
     
BsplineErr Bspline_eval_derivs( double theta, double z, BsplineInput *bspline_input, BsplineResult *bspline_result );

Parameters

double theta
The theta to evaluate the B-spline
double z
The value of z to evaluate the B-spline
BsplineInput *bspline_input
All B-spline input
BsplineResult *bspline_result
All B-spline output

Description

An optimized implementation of the function BsplineAlgo_c. This function can be further optimized by folding in the last of the seperate call to BsplineAlgo_b, but this requires the rewriting of the algo_b routine. The Numerical Evaluation of a Spline from its B-Spline Representation by M. G. Cox. J. Inst. Maths. Applics (1978) 21, 135-143.

Returns

The enum BsplineErr.


Possible values for a BsplineErr are as follows:
Bspline_Success
Success
Bspline_OutOfRange
One of the arguments is out of range
Bspline_OutOfRangeT
The theta value is not within the limits of the t_knots
Bspline_OutOfRangeZ
The z value is outside the limits of the z_knots
Bspline_WrongMethod1
The method request must be one of : a, A, b or B
Bspline_WrongMethod2
The method request must be one of : a, A, b or B