naginterfaces.library.specfun.hyperg_confl_real_scaled¶
- naginterfaces.library.specfun.hyperg_confl_real_scaled(ani, adr, bni, bdr, x)[source]¶
hyperg_confl_real_scaled
returns a value for the confluent hypergeometric function , with real parameters and and real argument . The solution is returned in the scaled form . This function is sometimes also known as Kummer’s function .For full information please refer to the NAG Library document for s22bb
https://support.nag.com/numeric/nl/nagdoc_30.2/flhtml/s/s22bbf.html
- Parameters
- anifloat
, the nearest integer to , satisfying .
- adrfloat
, the signed decimal remainder satisfying and .
Note: if , will be used, where is the machine precision as returned by
machine.precision
.- bnifloat
, the nearest integer to , satisfying .
- bdrfloat
, the signed decimal remainder satisfying and .
Note: if , will be used, where is the machine precision as returned by
machine.precision
.- xfloat
The argument of the function.
- Returns
- frmfloat
, the scaled real component of the solution satisfying .
Note: if overflow occurs upon completion, as indicated by = 2, the value of returned may still be correct. If overflow occurs in a subcalculation, as indicated by = 5, this should not be assumed.
- scmint
, the scaling power of two, satisfying .
Note: if overflow occurs upon completion, as indicated by = 2, then , where is the largest representable integer (see
machine.integer_max
). If overflow occurs during a subcalculation, as indicated by = 5, may or may not be greater than . In either case, will have been returned.
- Raises
- NagValueError
- (errno )
All approximations have completed, and the final residual estimate indicates no accuracy can be guaranteed.
Relative residual .
- (errno )
Overflow occurred in a subcalculation of .
The answer may be completely incorrect.
- (errno )
On entry, .
Constraint: .
- (errno )
is non-integral.
On entry, .
Constraint: .
- (errno )
On entry, .
Constraint: .
- (errno )
On entry, .
Constraint: .
- (errno )
On entry, .
is undefined when is zero or a negative integer.
- (errno )
is non-integral.
On entry, .
Constraint: .
- (errno )
On entry, .
Constraint: .
- (errno )
On entry, .
Constraint: .
- Warns
- NagAlgorithmicWarning
- (errno )
Underflow occurred during the evaluation of .
The returned value may be inaccurate.
- (errno )
On completion, overflow occurred in the evaluation of .
- (errno )
All approximations have completed, and the final residual estimate indicates some precision may have been lost.
Relative residual .
- Notes
hyperg_confl_real_scaled
returns a value for the confluent hypergeometric function , with real parameters and and real argument , in the scaled form , where is the real scaled component and is the integer power of two scaling. This function is unbounded or not uniquely defined for equal to zero or a negative integer.The confluent hypergeometric function is defined by the confluent series,
where is the rising factorial of . is a solution to the second order ODE (Kummer’s Equation):
Given the parameters and argument , this function determines a set of safe values and selects an appropriate algorithm to accurately evaluate the functions . The result is then used to construct the solution to the original problem using, where necessary, recurrence relations and/or continuation.
For improved precision in the final result, this function accepts and split into an integral and a decimal fractional component. Specifically , where and is integral. is similarly deconstructed.
Additionally, an artificial bound, is placed on the magnitudes of , and to minimize the occurrence of overflow in internal calculations. , where . It should, however, not be assumed that this function will produce an accurate result for all values of , and satisfying this criterion.
Please consult the NIST Digital Library of Mathematical Functions for a detailed discussion of the confluent hypergeometric function including special cases, transformations, relations and asymptotic approximations.
- References
NIST Digital Library of Mathematical Functions
Pearson, J, 2009, Computation of hypergeometric functions, MSc Dissertation, Mathematical Institute, University of Oxford