Beispiel #1
0
 def _normalize(self):
     "Normalize basis function. From THO eq. 2.2"
     l, m, n = self.powers
     self.norm = np.sqrt(
         pow(2, 2 * (l + m + n) + 1.5) *
         pow(self.exponent, l + m + n + 1.5) / fact2(2 * l - 1) /
         fact2(2 * m - 1) / fact2(2 * n - 1) / pow(np.pi, 1.5))
     return
Beispiel #2
0
 def _normalize(self):
     "Normalize basis function. From THO eq. 2.2"
     l,m,n = self.powers
     self.norm = np.sqrt(pow(2,2*(l+m+n)+1.5)*
                         pow(self.exponent,l+m+n+1.5)/
                         fact2(2*l-1)/fact2(2*m-1)/
                         fact2(2*n-1)/pow(np.pi,1.5))
     return
Beispiel #3
0
def overlap1d(l1,l2,PAx,PBx,gamma):
    """
    The one-dimensional component of the overlap integral. Taken from THO eq. 2.12
    >>> isnear(overlap1d(0,0,0,0,1),1.0)
    True
    """
    total = 0
    for i in range(1+int(floor(0.5*(l1+l2)))):
        total += binomial_prefactor(2*i,l1,l2,PAx,PBx)* \
                 fact2(2*i-1)/pow(2*gamma,i)
    return total
Beispiel #4
0
def overlap1d(l1, l2, PAx, PBx, gamma):
    """
    The one-dimensional component of the overlap integral. Taken from THO eq. 2.12
    >>> isnear(overlap1d(0,0,0,0,1),1.0)
    True
    """
    total = 0
    for i in range(1 + int(floor(0.5 * (l1 + l2)))):
        total += binomial_prefactor(2*i,l1,l2,PAx,PBx)* \
                 fact2(2*i-1)/pow(2*gamma,i)
    return total
Beispiel #5
0
 def normalization(self, expn):
     l,m,n = self.powers
     result = pow(2, 2*(l+m+n)+1.5) * pow(expn, l+m+n+1.5) / pow(np.pi, 1.5)
     result /= fact2(2*l-1) * fact2(2*m-1) * fact2(2*n-1)
     return np.sqrt(result)