|
NAG[s17dhc] NAG[nag_complex_airy_bi] - Airy functions and , complex
|
|
Calling Sequence
s17dhc(deriv, z, scal, bi, 'fail'=fail)
nag_complex_airy_bi(. . .)
Parameters
|
deriv - String;
|
|
|
On entry: specifies whether the function or its derivative is required.
|
|
is returned.
|
|
is returned.
|
|
Constraint: "Nag_Function" or "Nag_Deriv". .
|
|
|
z - complex;
|
|
|
On entry: the argument of the function.
|
|
|
scal - String;
|
|
|
On entry: the scaling option.
|
|
The result is returned unscaled.
|
|
The result is returned scaled by the factor .
|
|
Constraint: "Nag_UnscaleRes" or "Nag_ScaleRes". .
|
|
|
bi - assignable;
|
|
|
Note: On exit the variable bi will have a value of type complex.
|
|
On exit: the required function or derivative value.
|
|
|
'fail'=fail - table; (optional)
|
|
|
The NAG error argument, see the documentation for NagError.
|
|
|
|
Description
|
|
|
Purpose
|
|
nag_complex_airy_bi (s17dhc) returns the value of the Airy function or its derivative for complex , with an option for exponential scaling.
|
|
Description
|
|
nag_complex_airy_bi (s17dhc) returns a value for the Airy function or its derivative , where is complex, . Optionally, the value is scaled by the factor .
The function is derived from the function CBIRY in Amos (1986). It is based on the relations , and , where is the modified Bessel function and .
For very large , argument reduction will cause total loss of accuracy, and so no computation is performed. For slightly smaller , the computation is performed but results are accurate to less than half of machine precision. If is too large, and the unscaled function is required, there is a risk of overflow and so no computation is performed. In all the above cases, a warning is given by the function.
|
|
Error Indicators and Warnings
|
|
"NE_BAD_PARAM"
On entry, argument had an illegal value.
"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_OVERFLOW_LIKELY"
No computation because is too large when .
"NE_TERMINATION_FAILURE"
No computation – algorithm termination condition not met.
"NE_TOTAL_PRECISION_LOSS"
No computation because .
"NW_SOME_PRECISION_LOSS"
Results lack precision because .
|
|
Accuracy
|
|
All constants in nag_complex_airy_bi (s17dhc) 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 . Because of errors in argument reduction when computing elementary functions inside nag_complex_airy_bi (s17dhc), the actual number of correct digits is limited, in general, by , where represents the number of digits lost due to the argument reduction. Thus the larger the value of , the less the precision in the result.
Empirical tests with modest values of , checking relations between Airy functions , , and , have shown errors limited to the least significant 3 – 4 digits of precision.
|
|
|
Examples
|
|
>
|
deriv := "Nag_Function":
z := 0.3 +0.4*I:
scal := "Nag_UnscaleRes":
NAG:-s17dhc(deriv, z, scal, bi):
|
|
|
See Also
|
|
Abramowitz M and Stegun I A (1972) Handbook of Mathematical Functions (3rd Edition) Dover Publications
Amos D E (1986) Algorithm 644: A portable package for Bessel functions of a complex argument and non-negative order ACM Trans. Math. Software 12 265–273
s Chapter Introduction.
NAG Toolbox Overview.
NAG Web Site.
|
|