MPQC  3.0.0-alpha
sc::SOBasis Class Reference

A SOBasis object describes the transformation from an atomic orbital basis to a symmetry orbital basis. More...

#include <chemistry/qc/basis/sobasis.h>

Inheritance diagram for sc::SOBasis:
sc::RefCount

Public Member Functions

 SOBasis (const Ref< GaussianBasisSet > &, const Ref< Integral > &)
 Create an SOBasis object given a GaussianBasisSet and Integral objects.
 
int nshell () const
 Return the number of shells.
 
int nirrep () const
 Return the number of irreps.
 
int ncomponent (int iirrep) const
 
int nfunction_in_irrep (int irrep) const
 Return the number of functions in the given irrep.
 
int function_offset_for_irrep (int irrep) const
 Return the offset for the first function of the given irrep.
 
int nfunction (int ishell) const
 Return the number of functions in the given shell.
 
int naofunction (int ishell) const
 Return the number of functions in the AO shell that make up the given SO shell.
 
int nfunction (int ishell, int iirrep) const
 Returns the number of functions in the shell in a given irrep.
 
int max_nfunction_in_shell () const
 Returns the maximum number of functions in a shell (summed over all irreps)
 
int function_offset_within_shell (int ishell, int iirrep) const
 Normally, SO shell numbering starts at zero within each irrep. More...
 
int function (int ishell)
 Convert the SO shell number to the overall number of the first function within that shell.
 
int irrep (int ishell, int ifunc) const
 Convert SO shell and function number within shell to irrep.
 
int function_within_irrep (int ishell, int ifunc) const
 Convert SO shell and function number to number within irrep.
 
const SOTransformtrans (int ishell) const
 Return the SOTransform object for the given shell.
 
void print (std::ostream &o=ExEnv::out0()) const
 
- Public Member Functions inherited from sc::RefCount
size_t identifier () const
 Return the unique identifier for this object that can be compared for different objects of different types. More...
 
int lock_ptr () const
 Lock this object.
 
int unlock_ptr () const
 Unlock this object.
 
void use_locks (bool inVal)
 start and stop using locks on this object
 
refcount_t nreference () const
 Return the reference count.
 
refcount_t reference ()
 Increment the reference count and return the new count.
 
refcount_t dereference ()
 Decrement the reference count and return the new count.
 
int managed () const
 
void unmanage ()
 Turn off the reference counting mechanism for this object. More...
 

Protected Attributes

Ref< GaussianBasisSetbasis_
 
int nshell_
 
int nirrep_
 
int * ncomp_
 
int ** nfunc_
 
int * naofunc_
 
int ** funcoff_
 
int * nfunc_in_irrep_
 
int * func_
 
int * irrep_
 
int * func_within_irrep_
 
SOTransformtrans_
 

Additional Inherited Members

- Protected Member Functions inherited from sc::RefCount
 RefCount (const RefCount &)
 
RefCountoperator= (const RefCount &)
 

Detailed Description

A SOBasis object describes the transformation from an atomic orbital basis to a symmetry orbital basis.

The cental concept here is "SO shell". An SO shell is defined as a collection of symmetry-adapted basis functions that arise from one set of AO shells related by symmetry (an AO shell orbit). Thus the number of SO shells = the number of symmetry-unique AO shells, and each SO shell contains basis functions of potentially several symmetries.

Member Function Documentation

◆ function_offset_within_shell()

int sc::SOBasis::function_offset_within_shell ( int  ishell,
int  iirrep 
) const
inline

Normally, SO shell numbering starts at zero within each irrep.

This returns an offset to make SO shell numbers unique within the shell.


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

Generated at Sun Jan 26 2020 23:24:12 for MPQC 3.0.0-alpha using the documentation package Doxygen 1.8.16.