Psi4
Public Member Functions | Static Public Attributes | Protected Member Functions | Protected Attributes | Friends | List of all members
psi::MOSpace Class Reference

#include <mospace.h>

Public Member Functions

 ~MOSpace ()
 
 MOSpace (const char label, const std::vector< int > aOrbs, const std::vector< int > bOrbs, const std::vector< int > aIndex, const std::vector< int > bIndex)
 
 MOSpace (const char label, const std::vector< int > aOrbs, const std::vector< int > aIndex)
 
 MOSpace (const char label, const std::vector< int > orbsPI)
 
char label ()
 Get the unique identifier for this space. More...
 
const std::vector< int > & aOrbs () const
 Get the alpha orbitals. More...
 
const std::vector< int > & bOrbs () const
 Get the beta orbitals. More...
 
const std::vector< int > & aIndex ()
 Get the alpha orbital indexing array for IWL. More...
 
const std::vector< int > & bIndex ()
 Get the beta orbital indexing array for IWL. More...
 
bool placeholder () const
 Whether this is just a placeholder. More...
 
void set_placeholder (bool t_f)
 

Static Public Attributes

static std::shared_ptr< MOSpacefzc
 Keeps track of which labels have been assigned, for safety. More...
 
static std::shared_ptr< MOSpaceocc
 
static std::shared_ptr< MOSpacefzv
 
static std::shared_ptr< MOSpacevir
 
static std::shared_ptr< MOSpaceall
 
static std::shared_ptr< MOSpacenil
 
static std::shared_ptr< MOSpacedum
 

Protected Member Functions

 MOSpace (const char label)
 

Protected Attributes

const char label_
 
std::vector< int > aOrbs_
 
std::vector< int > bOrbs_
 
std::vector< int > aIndex_
 
std::vector< int > bIndex_
 
bool placeholder_
 

Friends

bool operator== (const MOSpace &lhs, const MOSpace &rhs)
 
bool operator>= (const MOSpace &lhs, const MOSpace &rhs)
 
bool operator!= (const MOSpace &lhs, const MOSpace &rhs)
 
bool operator<= (const MOSpace &lhs, const MOSpace &rhs)
 
bool operator< (const MOSpace &lhs, const MOSpace &rhs)
 
bool operator> (const MOSpace &lhs, const MOSpace &rhs)
 
bool operator== (const MOSpace &lhs, const char c)
 
bool operator>= (const MOSpace &lhs, const char c)
 
bool operator!= (const MOSpace &lhs, const char c)
 
bool operator<= (const MOSpace &lhs, const char c)
 
bool operator< (const MOSpace &lhs, const char c)
 
bool operator> (const MOSpace &lhs, const char c)
 

Detailed Description

The MOSpace class is used to define orbital spaces in which to transform integrals

Constructor & Destructor Documentation

MOSpace::~MOSpace ( )
MOSpace::MOSpace ( const char  label,
const std::vector< int >  aOrbs,
const std::vector< int >  bOrbs,
const std::vector< int >  aIndex,
const std::vector< int >  bIndex 
)

Defines a custom orbital space with different alpha and beta spaces

Parameters
label- a single character to label this space. This must be unique to this space, so see the MOSpace static member variables for a list of the labels already used. The uniqueness is checked internally.
aOrbs- an array of dimension <= nso, describing the Pitzer indices of the alpha orbitals present
bOrbs- an array of dimension <= nso, describing the Pitzer indices of the beta orbitals present
aIndex- an array of dimension #orbitals describing the number of each alpha orbital in the space. This is only for the purposes of IWL output, so it can be passed as an empty vector for DPD output.
bIndex- an array of dimension #orbitals describing the number of each beta orbital in the space. For restricted transformations or for DPD output only, this can be passed as an empty vector.
MOSpace::MOSpace ( const char  label,
const std::vector< int >  aOrbs,
const std::vector< int >  aIndex 
)

Defines a custom orbital space with different alpha and beta spaces

Parameters
label- a single character to label this space. This must be unique to this space, so see the MOSpace static member variables for a list of the labels already used. The uniqueness is checked internally.
aOrbs- an array of dimension <= nso, describing the Pitzer indices of the alpha (and beta) orbitals present
aIndex- an array of dimension #orbitals describing the number of each alpha (and beta) orbital in the space. This is only for the purposes of IWL output, so it can be passed as an empty vector for DPD output.
MOSpace::MOSpace ( const char  label,
const std::vector< int >  orbsPI 
)

Defines a custom orbital space over (symmetrized) atomic orbitals. Used for auxilliary basis sets.

Parameters
label- a single character to label this space. This must be unique to this space, so see the MOSpace static member variables for a list of the labels already used. The uniqueness is checked internally.
orbsPI- the numer of orbitals per irrep in this SO space
MOSpace::MOSpace ( const char  label)
protected

This creates an empty MOSpace with just a label. This is solely for the construction of the pre-defined spaces; use the longer form of the constructor for custom spaces.

Member Function Documentation

const std::vector<int>& psi::MOSpace::aIndex ( )
inline

Get the alpha orbital indexing array for IWL.

const std::vector<int>& psi::MOSpace::aOrbs ( ) const
inline

Get the alpha orbitals.

const std::vector<int>& psi::MOSpace::bIndex ( )
inline

Get the beta orbital indexing array for IWL.

const std::vector<int>& psi::MOSpace::bOrbs ( ) const
inline

Get the beta orbitals.

char psi::MOSpace::label ( )
inline

Get the unique identifier for this space.

bool psi::MOSpace::placeholder ( ) const
inline

Whether this is just a placeholder.

void psi::MOSpace::set_placeholder ( bool  t_f)
inline

Friends And Related Function Documentation

bool operator!= ( const MOSpace lhs,
const MOSpace rhs 
)
friend
bool operator!= ( const MOSpace lhs,
const char  c 
)
friend
bool operator< ( const MOSpace lhs,
const MOSpace rhs 
)
friend
bool operator< ( const MOSpace lhs,
const char  c 
)
friend
bool operator<= ( const MOSpace lhs,
const MOSpace rhs 
)
friend
bool operator<= ( const MOSpace lhs,
const char  c 
)
friend
bool operator== ( const MOSpace lhs,
const MOSpace rhs 
)
friend
bool operator== ( const MOSpace lhs,
const char  c 
)
friend
bool operator> ( const MOSpace lhs,
const MOSpace rhs 
)
friend
bool operator> ( const MOSpace lhs,
const char  c 
)
friend
bool operator>= ( const MOSpace lhs,
const MOSpace rhs 
)
friend
bool operator>= ( const MOSpace lhs,
const char  c 
)
friend

Member Data Documentation

std::vector<int> psi::MOSpace::aIndex_
protected
std::shared_ptr< MOSpace > MOSpace::all
static
std::vector<int> psi::MOSpace::aOrbs_
protected
std::vector<int> psi::MOSpace::bIndex_
protected
std::vector<int> psi::MOSpace::bOrbs_
protected
std::shared_ptr< MOSpace > MOSpace::dum
static
std::shared_ptr< MOSpace > MOSpace::fzc
static

Keeps track of which labels have been assigned, for safety.

std::shared_ptr< MOSpace > MOSpace::fzv
static
const char psi::MOSpace::label_
protected

The identifier for this space; this must be unique for each space. See the documentation for the static spaces in MOSpace to see which labels have already been used

std::shared_ptr< MOSpace > MOSpace::nil
static
std::shared_ptr< MOSpace > MOSpace::occ
static
bool psi::MOSpace::placeholder_
protected
std::shared_ptr< MOSpace > MOSpace::vir
static

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