|
NAG[s14adc] NAG[nag_polygamma_deriv] - Scaled derivatives of
|
|
Calling Sequence
s14adc(x, n, ans, 'm'=m, 'fail'=fail)
nag_polygamma_deriv(. . .)
Parameters
|
x - float;
|
|
|
On entry: the argument of the function.
|
|
Constraint: . .
|
|
|
n - integer;
|
|
|
On entry: the index of the first member of the sequence of functions.
|
|
Constraint: . .
|
|
|
ans - Vector(1..m, datatype=float[8]);
|
|
|
|
'm'=m - integer; (optional)
|
|
|
Constraint: . .
|
|
|
'fail'=fail - table; (optional)
|
|
|
The NAG error argument, see the documentation for NagError.
|
|
|
|
Description
|
|
|
Purpose
|
|
nag_polygamma_deriv (s14adc) returns a sequence of values of scaled derivatives of the psi function .
|
|
Description
|
|
nag_polygamma_deriv (s14adc) computes values of the function
for , , , where is the psi function
and denotes the th derivative of .
The function is derived from the function PSIFN in Amos (1983). The basic method of evaluation of is the asymptotic series
for large greater than a machine-dependent value , followed by backward recurrence using
for smaller values of , where when , when , and , are the Bernoulli numbers.
When is large, the above procedure may be inefficient, and the expansion
which converges rapidly for large , is used instead.
|
|
Error Indicators and Warnings
|
|
"NE_BAD_PARAM"
On entry, argument had an illegal value.
"NE_INT"
On entry, . Constraint: .
On entry, . Constraint: .
"NE_INTERNAL_ERROR"
An internal error has occurred in this function. Check the function call and any array sizes. If the call is correct then please consult NAG for assistance.
"NE_INTERNAL_WORKSPACE"
There is not enough internal workspace to continue computation. m is probably too large.
"NE_OVERFLOW_LIKELY"
Computation abandoned due to the likelihood of overflow.
"NE_REAL"
On entry, . Constraint: .
"NE_UNDERFLOW_LIKELY"
Computation abandoned due to the likelihood of underflow.
|
|
Accuracy
|
|
All constants in nag_polygamma_deriv (s14adc) are given to approximately 18 digits of precision. Calling the number of digits of precision in the floating-point arithmetic being used , then clearly the maximum number of correct digits in the results obtained is limited by . Empirical tests of nag_polygamma_deriv (s14adc), taking values of in the range , and in the range , have shown that the maximum relative error is a loss of approximately two decimal places of precision. Tests with , i.e., testing the function , have shown somewhat better accuracy, except at points close to the zero of , , where only absolute accuracy can be obtained.
|
|
|
Examples
|
|
>
|
x := 0.1:
n := 0:
m := 4:
ans := Vector(4, datatype=float[8]):
NAG:-s14adc(x, n, ans, 'm' = m):
|
|
|
See Also
|
|
Abramowitz M and Stegun I A (1972) Handbook of Mathematical Functions (3rd Edition) Dover Publications
Amos D E (1983) Algorithm 610: A portable FORTRAN subroutine for derivatives of the psi function ACM Trans. Math. Software 9 494–502
s Chapter Introduction.
NAG Toolbox Overview.
NAG Web Site.
|
|