|
LIBINT 2.7.2
|
Computes the Boys function,
, using single algorithm (asymptotic expansion).
More...
#include <boys.h>
Static Public Member Functions | |
| static std::shared_ptr< const FmEval_Reference > | instance (int, Real) |
| static Real | eval (Real T, size_t m) |
computes a single value of using MacLaurin series to full precision of Real | |
| static void | eval (Real *Fm, Real T, size_t mmax) |
| fills up an array of Fm(T) for m in [0,mmax] More... | |
Computes the Boys function,
, using single algorithm (asymptotic expansion).
Slow for the sake of precision control. Useful in two cases:
Real supports high/arbitrary precision, and
, if Real is a low-precision floating-point type. N.B. FmEval_Reference2 , which can compute for all practical values of
and
, is recommended with standard Real types (double and float). Real is exhausted. It is important that std::numeric_limits<Real> is defined appropriately.| Real | the type to use for all floating-point computations. Must be able to compute logarithm and exponential, i.e. log(x) and exp(x), where x is Real, must be valid expressions. |
|
inlinestatic |
fills up an array of Fm(T) for m in [0,mmax]
| [out] | Fm | array to be filled in with the Boys function values, must be at least mmax+1 elements long |
| [in] | T | the Boys function argument |
| [in] | mmax | the maximum value of m for which Boys function will be computed; |
References libint2::FmEval_Reference< Real >::eval().