XLPack 7.0
XLPack Numerical Library (C API) Reference Manual
Loading...
Searching...
No Matches

◆ lhyp1f1()

double lhyp1f1 ( double  a,
double  b,
double  z,
int *  sign 
)

Logarithm of hypergeometric function ln|1F1(a; b; z)|

Purpose
lhyp1f1 computes the logarithm of the hypergeometric function ln|1F1(a; b; z)|.
Returns
ln|1F1(a; b; z)|.
Parameters
[in]aArgument a.
[in]bArgument b. (must not be a negative integer or zero unless a is an integer with b < a <= 0)
[in]zArgument z.
[out]signSign of hypergeometric function.
= -1: Negative.
= 1: Positive.
Error handling
  • If a is not an integer with b < a <= 0 and b is a negative integer or zero, domain error (EDOM) occurs.
  • Range error (ERANGE) may occur.
Known issues
Problem domains that are still unsolved for this routine exist as follows. Range error (ERANGE) may be reported in those cases.
  • 1F1(-a, -b, -z): a, b and z all large.
  • 1F1(-a, -b, z): a < b, b > z, this is really the same domain as above.
  • 1F1(a, -b, z): There is a gap in between methods where no reliable implementation is possible, the issue becomes much worse for a, b and z all large.
  • 1F1(tiny a, b, -z): There are some values where either the series is non-convergent (most particularly for b < 0) or where the series becomes divergent after a few terms limiting the precision that can be achieved.
Reference
boost/math/special_functions