LIBINT  2.1.0-stable
Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Friends | List of all members
libint2::CGF Class Reference

3D Cartesian Gaussian Function More...

#include <bfset.h>

Inheritance diagram for libint2::CGF:
Inheritance graph
[legend]
Collaboration diagram for libint2::CGF:
Collaboration graph
[legend]

Public Types

typedef CGF iter_type
 As far as SetIterator is concerned, CGF is a set of one CGF.
 
typedef IncableBFSet parent_type
 
- Public Types inherited from libint2::Hashable< LIBINT2_UINT_LEAST64, ComputeKey >
typedef KeyTraits< LIBINT2_UINT_LEAST64 >::ReturnType KeyReturnType
 

Public Member Functions

 CGF ()
 How to return key. More...
 
 CGF (unsigned int qn[3], bool pure_sh=false)
 
 CGF (const CGF &)
 
 CGF (const ConstructablePolymorphically &)
 
CGFoperator= (const CGF &)
 assignment
 
const OriginDerivative< 3u > & deriv () const
 
OriginDerivative< 3u > & deriv ()
 
const std::string label () const
 Return a compact label.
 
unsigned int num_bf () const
 Returns the number of basis functions in the set (always 1)
 
unsigned int qn (unsigned int axis) const
 Returns the quantum number along axis.
 
unsigned int operator[] (unsigned int axis) const
 
bool pure_sh () const
 contains only solid harmonics with the same quantum number as this shell? (this may permit simplified RR to be used – obviously must transform to solid harmonics later)
 
void pure_sh (bool p)
 
bool operator== (const CGF &) const
 Comparison operator.
 
void inc (unsigned int xyz, unsigned int c=1u)
 Implementation of IncableBFSet::inc().
 
void dec (unsigned int xyz, unsigned int c=1u)
 Implementation of IncableBFSet::dec().
 
unsigned int norm () const
 Implements IncableBFSet::norm()
 
LIBINT2_UINT_LEAST64 key () const
 Implements Hashable<LIBINT2_UINT_LEAST64>::key()
 
void print (std::ostream &os=std::cout) const
 Print out the content.
 
bool is_unit () const
 
- Public Member Functions inherited from libint2::IncableBFSet
bool zero () const
 norm() == 0
 
bool valid () const
 Return false if this object is invalid.
 
- Public Member Functions inherited from libint2::Contractable< CGF >
 Contractable (const Contractable &source)
 
Contractableoperator= (const Contractable &source)
 
bool contracted () const
 
void uncontract ()
 
void contract ()
 

Static Public Member Functions

static CGF unit ()
 returns the unit shell (exponent=0, am=0, indicated by unit_=true)
 
- Static Public Member Functions inherited from libint2::Contractable< CGF >
static void set_contracted_default_value (bool dv)
 

Static Public Attributes

static const LIBINT2_UINT_LEAST64 max_num_qn = ((1 + (CGShell::max_qn+1)) * (2 + (CGShell::max_qn+1)) * (3 + (CGShell::max_qn+1)) /6)
 The range of keys is [0,max_key). More...
 
static const LIBINT2_UINT_LEAST64 max_key = OriginDerivative<3u>::max_key * 2ul * max_num_qn * 2ul + 1
 

Friends

CGF operator+ (const CGF &A, const CGF &B)
 
CGF operator- (const CGF &A, const CGF &B)
 

Additional Inherited Members

- Protected Member Functions inherited from libint2::IncableBFSet
void invalidate ()
 make this object invalid
 
- Protected Attributes inherited from libint2::Hashable< LIBINT2_UINT_LEAST64, ComputeKey >
KeyStore< LIBINT2_UINT_LEAST64, OwnKey< KeyMP >::result > key_
 

Detailed Description

3D Cartesian Gaussian Function

Constructor & Destructor Documentation

CGF::CGF ( )

How to return key.

Default constructor makes an s-type Gaussian

References qn().

Member Function Documentation

void libint2::CGF::pure_sh ( bool  p)
inline
Parameters
pif true, will assume to contain only solid harmonics of the same quantum number as this shell

Member Data Documentation

const LIBINT2_UINT_LEAST64 libint2::CGF::max_num_qn = ((1 + (CGShell::max_qn+1)) * (2 + (CGShell::max_qn+1)) * (3 + (CGShell::max_qn+1)) /6)
static

The range of keys is [0,max_key).

The formula is easily derived by summing (L+1)(L+2)/2 up to CGShell::max_key The factor of 2 to account for contracted vs. uncontracted basis functions The factor of OriginDerivative::max_key to account for derivatives


The documentation for this class was generated from the following files: