DBVALU(3)

SYNOPSIS
DOUBLE PRECISION FUNCTION DBVALU (T, A, N, K, IDERIV, X, INBV, + WORK)

NAME
dbvalu - Evaluate the B-representation of a B-spline at X for the function value or any of its derivatives.

LIBRARY
SLATEC

CATEGORY
E3, K6

TYPE
DOUBLE PRECISION (BVALU-S, DBVALU-D)

KEYWORDS
DIFFERENTIATION OF B-SPLINE, EVALUATION OF B-SPLINE

AUTHOR
Amos, D. E., (SNLA)

DESCRIPTION
Written by Carl de Boor and modified by D. E. Amos Abstract **** a double precision routine **** DBVALU is the BVALUE function of the reference. DBVALU evaluates the B-representation (T,A,N,K) of a B-spline at X for the function value on IDERIV=0 or any of its derivatives on IDERIV=1,2,...,K-1. Right limiting values (right derivatives) are returned except at the right end point X=T(N+1) where left limiting values are computed. The spline is defined on T(K) .LE. X .LE. T(N+1). DBVALU returns a fatal error message when X is outside of this interval. To compute left derivatives or left limiting values at a knot T(I), replace N by I-1 and set X=T(I), I=K+1,N+1. DBVALU calls DINTRV Description of Arguments Input T,A,X are double precision T - knot vector of length N+K A - B-spline coefficient vector of length N N - number of B-spline coefficients N = sum of knot multiplicities-K K - order of the B-spline, K .GE. 1 IDERIV - order of the derivative, 0 .LE. IDERIV .LE. K-1 IDERIV = 0 returns the B-spline value X - argument, T(K) .LE. X .LE. T(N+1) INBV - an initialization parameter which must be set to 1 the first time DBVALU is called. Output WORK,DBVALU are double precision INBV - INBV contains information for efficient process- ing after the initial call and INBV must not be changed by the user. Distinct splines require distinct INBV parameters. WORK - work vector of length 3*K. DBVALU - value of the IDERIV-th derivative at X Error Conditions An improper input is a fatal error

REFERENCES
Carl de Boor, Package for calculating with B-splines, SIAM Journal on Numerical Analysis 14, 3 (June 1977), pp. 441-472.

ROUTINES CALLED
DINTRV, XERMSG

REVISION HISTORY (YYMMDD)
800901 DATE WRITTEN
890831 Modified array declarations. (WRB)
890911 Removed unnecessary intrinsics. (WRB)
890911 REVISION DATE from Version 3.2
891214 Prologue converted to Version 4.0 format. (BAB)
900315 CALLs to XERROR changed to CALLs to XERMSG. (THJ)
920501 Reformatted the REFERENCES section. (WRB)