LIBINT 2.7.2
Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | List of all members
libint2::CGF1d< Axis > Class Template Reference

Cartesian components of 3D CGF = 1D CGF. More...

#include <bfset.h>

Inheritance diagram for libint2::CGF1d< Axis >:
Inheritance graph
[legend]
Collaboration diagram for libint2::CGF1d< Axis >:
Collaboration graph
[legend]

Public Types

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

Public Member Functions

 CGF1d ()
 Default constructor makes an qn=0 Gaussian.
 
 CGF1d (unsigned int qn)
 
 CGF1d (unsigned int qn[1])
 
 CGF1d (const CGF1d &source)
 
 CGF1d (const ConstructablePolymorphically &sptr)
 
CGF1doperator= (const CGF1d &source)
 assignment
 
CGF1d operator+ (const CGF1d &B) const
 
CGF1d operator- (const CGF1d &B) const
 
const OriginDerivative< 1u > & deriv () const
 
OriginDerivative< 1u > & deriv ()
 
std::string label () const override
 Return a compact label. More...
 
unsigned int num_bf () const override
 Returns the number of basis functions in the set (always 1) More...
 
unsigned int qn (unsigned int dir=0) const
 Returns the quantum number (what used to be "angular momentum")
 
unsigned int operator[] (unsigned int dir) const
 
bool operator== (const CGF1d &a) const
 Comparison operator.
 
void inc (unsigned int dir, unsigned int c=1u) override
 Implementation of IncableBFSet::inc(). More...
 
void dec (unsigned int dir, unsigned int c=1u) override
 Implementation of IncableBFSet::dec(). More...
 
unsigned int norm () const override
 Implements IncableBFSet::norm() More...
 
LIBINT2_UINT_LEAST64 key () const override
 Implements Hashable<LIBINT2_UINT_LEAST64>::key() More...
 
void print (std::ostream &os=std::cout) const
 Print out the content.
 
bool is_unit () const
 
- Public Member Functions inherited from libint2::IncableBFSet
virtual void inc (unsigned int xyz, unsigned int c=1u)=0
 Add c quanta along xyz. More...
 
virtual void dec (unsigned int xyz, unsigned int c=1u)=0
 Subtract c quanta along xyz. If impossible, invalidate the object, but do not change its quanta! More...
 
virtual unsigned int norm () const =0
 Returns the norm of the quantum numbers. More...
 
bool zero () const
 norm() == 0
 
bool valid () const
 Return false if this object is invalid.
 
virtual unsigned int num_bf () const =0
 
virtual std::string label () const =0
 
virtual KeyReturnType key () const=0
 
- Public Member Functions inherited from libint2::Contractable< CGF1d< Axis > >
 Contractable (const Contractable &source)
 
Contractableoperator= (const Contractable &source)
 
bool contracted () const
 
void uncontract ()
 
void contract ()
 

Static Public Member Functions

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

Static Public Attributes

static constexpr auto axis = Axis
 
static const LIBINT2_UINT_LEAST64 max_num_qn = CGShell::max_qn+1
 The range of keys is [0,max_key). More...
 
static const LIBINT2_UINT_LEAST64 max_key = OriginDerivative<1u>::max_key * OriginDerivative<1u>::max_key * max_num_qn + 1
 

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

template<CartesianAxis Axis>
class libint2::CGF1d< Axis >

Cartesian components of 3D CGF = 1D CGF.

Note
reference to particular cartesian axis embedded in type, so that for example axis-dependent RRs can correctly infer geometric constants

Member Function Documentation

◆ dec()

template<CartesianAxis Axis>
void libint2::CGF1d< Axis >::dec ( unsigned int  dir,
unsigned int  c = 1u 
)
inlineoverridevirtual

◆ inc()

template<CartesianAxis Axis>
void libint2::CGF1d< Axis >::inc ( unsigned int  dir,
unsigned int  c = 1u 
)
inlineoverridevirtual

Implementation of IncableBFSet::inc().

Implements libint2::IncableBFSet.

References libint2::IncableBFSet::valid().

◆ key()

template<CartesianAxis Axis>
LIBINT2_UINT_LEAST64 libint2::CGF1d< Axis >::key ( ) const
inlineoverridevirtual

◆ label()

template<CartesianAxis Axis>
std::string libint2::CGF1d< Axis >::label ( ) const
inlineoverridevirtual

◆ norm()

template<CartesianAxis Axis>
unsigned int libint2::CGF1d< Axis >::norm ( ) const
inlineoverridevirtual

◆ num_bf()

template<CartesianAxis Axis>
unsigned int libint2::CGF1d< Axis >::num_bf ( ) const
inlineoverridevirtual

Returns the number of basis functions in the set (always 1)

Implements libint2::BFSet.

Member Data Documentation

◆ max_num_qn

template<CartesianAxis Axis>
const LIBINT2_UINT_LEAST64 libint2::CGF1d< Axis >::max_num_qn = CGShell::max_qn+1
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

Referenced by libint2::CGF1d< Axis >::key().


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