QMCPACK
STONorm< T > Struct Template Reference

class to evaluate the normalization factors for the Slater-Type orbitals More...

+ Collaboration diagram for STONorm< T >:

Public Member Functions

 STONorm (int nmax=1)
 
void set (int nmax)
 
operator() (int n, T screen)
 

Public Attributes

std::vector< T > Factorial
 

Detailed Description

template<class T>
struct STONorm< T >

class to evaluate the normalization factors for the Slater-Type orbitals

Definition at line 22 of file SlaterTypeOrbital.h.

Constructor & Destructor Documentation

◆ STONorm()

STONorm ( int  nmax = 1)
inlineexplicit

Definition at line 27 of file SlaterTypeOrbital.h.

27 { set(nmax); }

Member Function Documentation

◆ operator()()

T operator() ( int  n,
screen 
)
inline

Definition at line 38 of file SlaterTypeOrbital.h.

References STONorm< T >::Factorial, qmcplusplus::n, qmcplusplus::pow(), and qmcplusplus::sqrt().

39  {
40  return 1.0 / sqrt(Factorial[2 * n + 2] / pow(2.0 * screen, 2 * n + 3));
41  //return
42  // 1.0/sqrt(Factorial[2*n+2]*4.0*(4.0*atan(1.0))/pow(2.0*screen,2*n+3));
43  }
MakeReturn< BinaryNode< FnPow, typename CreateLeaf< Vector< T1, C1 > >::Leaf_t, typename CreateLeaf< Vector< T2, C2 > >::Leaf_t > >::Expression_t pow(const Vector< T1, C1 > &l, const Vector< T2, C2 > &r)
std::vector< T > Factorial
MakeReturn< UnaryNode< FnSqrt, typename CreateLeaf< Vector< T1, C1 > >::Leaf_t > >::Expression_t sqrt(const Vector< T1, C1 > &l)

◆ set()

void set ( int  nmax)
inline

Definition at line 29 of file SlaterTypeOrbital.h.

References STONorm< T >::Factorial, and qmcplusplus::n.

30  {
31  int n = 2 * nmax + 2;
32  Factorial.resize(n + 1);
33  Factorial[0] = 1.0;
34  for (int i = 1; i < n + 1; i++)
35  Factorial[i] = Factorial[i - 1] * static_cast<T>(i);
36  }
std::vector< T > Factorial

Member Data Documentation

◆ Factorial

std::vector<T> Factorial

Definition at line 24 of file SlaterTypeOrbital.h.

Referenced by STONorm< T >::operator()(), and STONorm< T >::set().


The documentation for this struct was generated from the following file: