mpqc::lcao::f12::F12PairEnergyReductor< Tile > Struct Template Reference
Documentation
template<typename Tile>
struct mpqc::lcao::f12::F12PairEnergyReductor< Tile >
tile reductor that computes pair contributions to the F12 energy
Given (a tile of) an F12 theory intermediate (V, B, X, and C) computes its contribution to the pair energies in the diagonal F12 approximation. The energy contribution from intermediate element is proportional to , (NB for both terms contribute). The coefficients will depend on the definition of the geminal, will differ between intermediates linear and quadratic in the geminal; they will also vary with the reference case, e.g. closed-shell spin-restricted case, open-shell, or spin-unrestricted cases.
- if pairspin == none (closed-shell reference) will compute pair energies for i<=j
- if pairspin == aa/bb will compute pair energies for i<j
- if pairspin == ab will compute pair energies for all ij
- if pairspin == s0 will compute pair energies for all i<=j
- if pairspin == s1 will compute pair energies for all i<j
Public Types | |
enum | PairSpin { PairSpin::none, PairSpin::aa, PairSpin::bb, PairSpin::ab, PairSpin::s0, PairSpin::s1 } |
using | result_type = RowMatrix< typename Tile::scalar_type > |
using | argument_type = Tile |
Public Member Functions | |
F12PairEnergyReductor ()=default | |
F12PairEnergyReductor (F12PairEnergyReductor const &)=default | |
F12PairEnergyReductor (double cijij, double cijji, int _n1, int _n2=-1, PairSpin sc=PairSpin::none) | |
result_type | operator() () const |
result_type | operator() (result_type const &t) const |
void | operator() (result_type &me, result_type const &other) const |
void | operator() (result_type &me, argument_type const &tile) const |
Public Attributes | |
double | c_ijij |
double | c_ijji |
int | n1 |
int | n2 |
PairSpin | spincase |
spin case More... | |
Member Typedef Documentation
◆ argument_type
template<typename Tile >
using mpqc::lcao::f12::F12PairEnergyReductor< Tile >::argument_type = Tile |
◆ result_type
template<typename Tile >
using mpqc::lcao::f12::F12PairEnergyReductor< Tile >::result_type = RowMatrix<typename Tile::scalar_type> |
Member Enumeration Documentation
◆ PairSpin
template<typename Tile >
|
strong |
Constructor & Destructor Documentation
◆ F12PairEnergyReductor() [1/3]
template<typename Tile >
|
default |
◆ F12PairEnergyReductor() [2/3]
template<typename Tile >
|
default |
◆ F12PairEnergyReductor() [3/3]
template<typename Tile >
|
inline |
Member Function Documentation
◆ operator()() [1/4]
template<typename Tile >
|
inline |
◆ operator()() [2/4]
template<typename Tile >
|
inline |
◆ operator()() [3/4]
template<typename Tile >
|
inline |
◆ operator()() [4/4]
template<typename Tile >
|
inline |
Member Data Documentation
◆ c_ijij
template<typename Tile >
double mpqc::lcao::f12::F12PairEnergyReductor< Tile >::c_ijij |
◆ c_ijji
template<typename Tile >
double mpqc::lcao::f12::F12PairEnergyReductor< Tile >::c_ijji |
◆ n1
template<typename Tile >
int mpqc::lcao::f12::F12PairEnergyReductor< Tile >::n1 |
of geminal orbitals for electron 1
◆ n2
template<typename Tile >
int mpqc::lcao::f12::F12PairEnergyReductor< Tile >::n2 |
of geminal orbitals for electron 2
◆ spincase
template<typename Tile >
PairSpin mpqc::lcao::f12::F12PairEnergyReductor< Tile >::spincase |
spin case
The documentation for this struct was generated from the following file:
- mpqc/chemistry/qc/lcao/integrals/f12_utility.h