This module computes the basic integrals for the truncated coulomb operator.
res(1) =G_0(R,T)= ((2*erf(sqrt(t))+erf(R-sqrt(t))-erf(R+sqrt(t)))/sqrt(t))
and up to 21 derivatives with respect to T
res(n+1)=(-1)**n d^n/dT^n G_0(R,T)
The function is only computed for values of R,T which fulfil
R**2 - 11.0_dp*R + 0.0_dp < T < R**2 + 11.0_dp*R + 50.0_dp where R>=0 T>=0
for T larger than the upper bound, 0 is returned
(which is accurate at least up to 1.0E-16)
while for T smaller than the lower bound, the caller is instructed
to use the conventional gamma function instead
(i.e. the limit of above expression for R to Infinity)
- Author
- Joost VandeVondele and Manuel Guidon
- History
- Nov 2008, 2009 Joost VandeVondele and Manuel Guidon May 2019 A. Bussy: Added a get_maxl_init function to get current status of nderiv_init and moved the file to common (made it accessible from aobasis, same place as gamma.F).