|
LIBINT 2.9.0
|
core integral for Yukawa and exponential interactions More...
#include <boys.h>
Public Member Functions | |
| TennoGmEval (unsigned int mmax, Real precision=maxabsprecision) | |
| unsigned int | max_m () const |
| Real | precision () const |
| void | eval_yukawa (Real *Gm, Real one_over_rho, Real T, size_t mmax, Real zeta) const |
| void | eval_slater (Real *Gm, Real one_over_rho, Real T, size_t mmax, Real zeta) const |
Static Public Member Functions | |
| static std::shared_ptr< const TennoGmEval > | instance (int m_max, double=0) |
| Singleton interface allows to manage the lone instance; adjusts max m values as needed in thread-safe fashion. | |
core integral for Yukawa and exponential interactions
Evaluates core integral for Gaussian integrals over the Yukawa potential 

| Real | real type |
Real = double is supported
|
inline |
| m_max | maximum value of the Gm function index |
| precision | the desired absolute precision (relative precision for most intervals will be below epsilon, but for large T/U values and high m relative precision is low); since evaluation is done primarily by interpolation, precision is not controlled dynamically, thus this should not be used. |
| std::invalid_argument | if m_max is greater than cheb_table_mmax (see tenno_cheb.h) |
| std::invalid_argument | if precision is smaller than maxabsprecision |
References libint2::verbose(), and libint2::verbose_stream().
|
inline |
| [in] | Gm | pointer to array of mmax+1 Real elements, on return this contains the core integral for Slater-type geminal, ![]() ![]() ![]() ![]() ![]() |
| [in] | one_over_rho | ![]() |
| [in] | T | ![]() |
| [in] | mmax | ![]() |
| [in] | zeta | ![]() |
| std::invalid_argument | if ![]() Umax |
|
inline |
| [in] | Gm | pointer to array of mmax+1 Real elements, on return this contains the core integral for Yukawa interaction, ![]() ![]() ![]() ![]() |
| [in] | one_over_rho | ![]() |
| [in] | T | ![]() |
| [in] | mmax | ![]() |
| [in] | zeta | ![]() |
| std::invalid_argument | if ![]() Umax |
|
inline |