LIBINT 2.9.0
Public Member Functions | Protected Member Functions | List of all members
libint2::IncableBFSet Class Referenceabstract

Set of basis functions with incrementable/decrementable quantum numbers. More...

#include <bfset.h>

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

Public Member Functions

virtual void inc (unsigned int xyz, unsigned int c=1u)=0
 Add c quanta along xyz.
 
virtual void dec (unsigned int xyz, unsigned int c=1u)=0
 Subtract c quanta along xyz.
 
virtual unsigned int norm () const =0
 Returns the norm of the quantum numbers.
 
bool zero () const
 norm() == 0
 
bool valid () const
 Return false if this object is invalid.
 
- Public Member Functions inherited from libint2::BFSet
virtual unsigned int num_bf () const =0
 
virtual std::string label () const =0
 

Protected Member Functions

void invalidate ()
 make this object invalid
 

Detailed Description

Set of basis functions with incrementable/decrementable quantum numbers.

Sets must be constructable using std::shared_ptr<BFSet> or std::shared_ptr<ConstructablePolymorphically>.

Call to dec() may invalidate the object. No further modification of such object's state is possible. Assignment of such object to another preserves the invalid state, but copy construction of a valid object is possible.

Member Function Documentation

◆ dec()

virtual void libint2::IncableBFSet::dec ( unsigned int xyz,
unsigned int c = 1u )
pure virtual

Subtract c quanta along xyz.

If impossible, invalidate the object, but do not change its quanta!

Implemented in libint2::CGF1d< Axis >, libint2::CGShell1d< Axis >, libint2::SHGShell, libint2::SHGF, libint2::CGShell, and libint2::CGF.

◆ inc()

virtual void libint2::IncableBFSet::inc ( unsigned int xyz,
unsigned int c = 1u )
pure virtual

◆ norm()

virtual unsigned int libint2::IncableBFSet::norm ( ) const
pure virtual

Returns the norm of the quantum numbers.

Implemented in libint2::SHGShell, libint2::SHGF, libint2::CGShell, libint2::CGF, libint2::CGF1d< Axis >, and libint2::CGShell1d< Axis >.

Referenced by zero().


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