mpqc.Chemistry.ElectronicStructure.Spin
Collaboration diagram for mpqc.Chemistry.ElectronicStructure.Spin:

Documentation

Functionality related to spin states of electrons.

Modules

 mpqc.Chemistry.ElectronicStructure.Spin.Util
 

Enumerations

enum  mpqc::NSpinCases { mpqc::NSpinCases1 = 2, mpqc::NSpinCases2 = 3 }
 
enum  mpqc::NPureSpinCases { mpqc::NPureSpinCases2 = 2 }
 
enum  mpqc::SpinCase1 { mpqc::SpinCase1::Any = -1, mpqc::SpinCase1::Alpha = 0, mpqc::SpinCase1::Beta = 1, mpqc::SpinCase1::Invalid = 2 }
 
enum  { mpqc::SpinCase1Any = static_cast<int>(SpinCase1::Any), mpqc::SpinCase1Alpha = static_cast<int>(SpinCase1::Alpha), mpqc::SpinCase1Beta = static_cast<int>(SpinCase1::Beta), mpqc::SpinCase1Invalid = static_cast<int>(SpinCase1::Invalid) }
 
enum  mpqc::SpinCase2 {
  mpqc::SpinCase2::Any = -1, mpqc::SpinCase2::AlphaBeta = 0, mpqc::SpinCase2::AlphaAlpha = 1, mpqc::SpinCase2::BetaBeta = 2,
  mpqc::SpinCase2::Invalid = 3
}
 
enum  mpqc::PureSpinCase2 { mpqc::PureSpinCase2::Any = -1, mpqc::PureSpinCase2::Singlet = 0, mpqc::PureSpinCase2::Triplet = 1, mpqc::PureSpinCase2::Invalid = 2 }
 

Functions

constexpr SpinCase1 mpqc::flip (SpinCase1 sc)
 
constexpr unsigned int mpqc::nspincases1 (bool spin_polarized)
 Returns the number of unique spin cases (1 or 2) More...
 
constexpr unsigned int mpqc::nspincases2 (bool spin_polarized)
 Returns the number of unique combinations of 2 spin cases (1 or 3) More...
 
constexpr unsigned int mpqc::npurespincases2 ()
 Returns the number of pure 2 spin cases. More...
 
constexpr SpinCase1 mpqc::case1 (SpinCase2 S)
 returns the first spin case of the 2-spin S More...
 
constexpr SpinCase1 mpqc::case2 (SpinCase2 S)
 returns the second spin case of the 2-spin S More...
 
constexpr SpinCase2 mpqc::case12 (SpinCase1 S1, SpinCase1 S2)
 combines 2 spins to give 1 2-spin More...
 
constexpr SpinCase1 mpqc::other (SpinCase1 S)
 given 1-spin return the other 1-spin More...
 
constexpr const char * mpqc::to_string (SpinCase1 S)
 
constexpr const char * mpqc::to_string (SpinCase2 S)
 
constexpr const char * mpqc::to_string (PureSpinCase2 S)
 
SpinCase1 mpqc::to_spincase1 (std::string key)
 
SpinCase2 mpqc::to_spincase2 (std::string key)
 
PureSpinCase2 mpqc::to_purespincase2 (std::string key)
 
std::string mpqc::prepend_spincase (SpinCase1 S, const std::string &R, bool lowercase=false)
 Prepend string representation of S to R and return. More...
 
std::string mpqc::prepend_spincase (SpinCase2 S, const std::string &R, bool lowercase=false)
 Prepend string representation of S to R and return. More...
 
std::string mpqc::prepend_spincase (PureSpinCase2 S, const std::string &R, bool lowercase=false)
 Prepend string representation of S to R and return. More...
 

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
SpinCase1Any 
SpinCase1Alpha 
SpinCase1Beta 
SpinCase1Invalid 

◆ NPureSpinCases

Enumerator
NPureSpinCases2 

◆ NSpinCases

Enumerator
NSpinCases1 
NSpinCases2 

◆ PureSpinCase2

enum mpqc::PureSpinCase2
strong
Enumerator
Any 
Singlet 
Triplet 
Invalid 

◆ SpinCase1

enum mpqc::SpinCase1
strong
Enumerator
Any 
Alpha 
Beta 
Invalid 

◆ SpinCase2

enum mpqc::SpinCase2
strong
Enumerator
Any 
AlphaBeta 
AlphaAlpha 
BetaBeta 
Invalid 

Function Documentation

◆ case1()

constexpr SpinCase1 mpqc::case1 ( SpinCase2  S)
constexpr

returns the first spin case of the 2-spin S

◆ case12()

constexpr SpinCase2 mpqc::case12 ( SpinCase1  S1,
SpinCase1  S2 
)
constexpr

combines 2 spins to give 1 2-spin

◆ case2()

constexpr SpinCase1 mpqc::case2 ( SpinCase2  S)
constexpr

returns the second spin case of the 2-spin S

◆ flip()

constexpr SpinCase1 mpqc::flip ( SpinCase1  sc)
constexpr

◆ npurespincases2()

constexpr unsigned int mpqc::npurespincases2 ( )
constexpr

Returns the number of pure 2 spin cases.

◆ nspincases1()

constexpr unsigned int mpqc::nspincases1 ( bool  spin_polarized)
constexpr

Returns the number of unique spin cases (1 or 2)

◆ nspincases2()

constexpr unsigned int mpqc::nspincases2 ( bool  spin_polarized)
constexpr

Returns the number of unique combinations of 2 spin cases (1 or 3)

◆ other()

constexpr SpinCase1 mpqc::other ( SpinCase1  S)
constexpr

given 1-spin return the other 1-spin

◆ prepend_spincase() [1/3]

std::string mpqc::prepend_spincase ( PureSpinCase2  S,
const std::string &  R,
bool  lowercase 
)

Prepend string representation of S to R and return.

◆ prepend_spincase() [2/3]

std::string mpqc::prepend_spincase ( SpinCase1  S,
const std::string &  R,
bool  lowercase 
)

Prepend string representation of S to R and return.

◆ prepend_spincase() [3/3]

std::string mpqc::prepend_spincase ( SpinCase2  S,
const std::string &  R,
bool  lowercase 
)

Prepend string representation of S to R and return.

◆ to_purespincase2()

PureSpinCase2 mpqc::to_purespincase2 ( std::string  key)

◆ to_spincase1()

SpinCase1 mpqc::to_spincase1 ( std::string  key)

◆ to_spincase2()

SpinCase2 mpqc::to_spincase2 ( std::string  key)

◆ to_string() [1/3]

constexpr const char * mpqc::to_string ( PureSpinCase2  S)
constexpr

◆ to_string() [2/3]

constexpr const char * mpqc::to_string ( SpinCase1  S)
constexpr

◆ to_string() [3/3]

constexpr const char * mpqc::to_string ( SpinCase2  S)
constexpr