mpqc::lcao::RoothaanEffectiveFockBuilder< Tile, Policy > Class Template Reference
Collaboration diagram for mpqc::lcao::RoothaanEffectiveFockBuilder< Tile, Policy >:

Documentation

template<typename Tile, typename Policy>
class mpqc::lcao::RoothaanEffectiveFockBuilder< Tile, Policy >

RoothaanEffectiveFockBuilder modifies a DistArrayVector of Fock matrices to a DistArrayVector of size 1 containing an effective Fock matrix (e.g. used for ROHF) (see C. C. J. Roothaan Rev Mod Phys 32, 179 (1960), DOI:10.1103/RevModPhys.32.179).

Public Types

using base_type = EffectiveFockBuilder< Tile, Policy >
 
using array_type = typename base_type::array_type
 
using arrayvec_type = typename base_type::arrayvec_type
 
- Public Types inherited from mpqc::lcao::EffectiveFockBuilder< Tile, Policy >
using array_type = TA::DistArray< Tile, Policy >
 
using arrayvec_type = TA::DistArrayVector< Tile, Policy >
 

Public Member Functions

 RoothaanEffectiveFockBuilder (array_type const &S)
 
 RoothaanEffectiveFockBuilder (RoothaanEffectiveFockBuilder const &)=default
 
 RoothaanEffectiveFockBuilder (RoothaanEffectiveFockBuilder &&)=default
 
RoothaanEffectiveFockBuilderoperator= (RoothaanEffectiveFockBuilder const &)=default
 
RoothaanEffectiveFockBuilderoperator= (RoothaanEffectiveFockBuilder &&)=default
 
 ~RoothaanEffectiveFockBuilder ()
 
arrayvec_type operator() (arrayvec_type const &F, arrayvec_type const &D) const override
 produces an effective Fock matrix for restricted orbitals More...
 
- Public Member Functions inherited from mpqc::lcao::EffectiveFockBuilder< Tile, Policy >
 EffectiveFockBuilder ()=default
 
 EffectiveFockBuilder (EffectiveFockBuilder const &)=default
 
 EffectiveFockBuilder (EffectiveFockBuilder &&)=default
 
EffectiveFockBuilderoperator= (EffectiveFockBuilder const &)=default
 
EffectiveFockBuilderoperator= (EffectiveFockBuilder &&)=default
 
virtual ~EffectiveFockBuilder ()
 

Member Typedef Documentation

◆ array_type

template<typename Tile , typename Policy >
using mpqc::lcao::RoothaanEffectiveFockBuilder< Tile, Policy >::array_type = typename base_type::array_type

◆ arrayvec_type

template<typename Tile , typename Policy >
using mpqc::lcao::RoothaanEffectiveFockBuilder< Tile, Policy >::arrayvec_type = typename base_type::arrayvec_type

◆ base_type

template<typename Tile , typename Policy >
using mpqc::lcao::RoothaanEffectiveFockBuilder< Tile, Policy >::base_type = EffectiveFockBuilder<Tile, Policy>

Constructor & Destructor Documentation

◆ RoothaanEffectiveFockBuilder() [1/3]

template<typename Tile , typename Policy >
mpqc::lcao::RoothaanEffectiveFockBuilder< Tile, Policy >::RoothaanEffectiveFockBuilder ( array_type const &  S)
inline

◆ RoothaanEffectiveFockBuilder() [2/3]

template<typename Tile , typename Policy >
mpqc::lcao::RoothaanEffectiveFockBuilder< Tile, Policy >::RoothaanEffectiveFockBuilder ( RoothaanEffectiveFockBuilder< Tile, Policy > const &  )
default

◆ RoothaanEffectiveFockBuilder() [3/3]

template<typename Tile , typename Policy >
mpqc::lcao::RoothaanEffectiveFockBuilder< Tile, Policy >::RoothaanEffectiveFockBuilder ( RoothaanEffectiveFockBuilder< Tile, Policy > &&  )
default

◆ ~RoothaanEffectiveFockBuilder()

template<typename Tile , typename Policy >
mpqc::lcao::RoothaanEffectiveFockBuilder< Tile, Policy >::~RoothaanEffectiveFockBuilder ( )
inline

Member Function Documentation

◆ operator()()

template<typename Tile , typename Policy >
RoothaanEffectiveFockBuilder< Tile, Policy >::arrayvec_type mpqc::lcao::RoothaanEffectiveFockBuilder< Tile, Policy >::operator() ( arrayvec_type const &  F,
arrayvec_type const &  D 
) const
overridevirtual

produces an effective Fock matrix for restricted orbitals

Parameters
Fthe unmodified DistArrayVector of Fock matrices
Dthe DistArrayVector of (1-particle) density matrices
Returns
The modified DistArrayVector of Fock matrices
Note
must have overlap matrix stored in member S_

Implements mpqc::lcao::EffectiveFockBuilder< Tile, Policy >.

◆ operator=() [1/2]

template<typename Tile , typename Policy >
RoothaanEffectiveFockBuilder& mpqc::lcao::RoothaanEffectiveFockBuilder< Tile, Policy >::operator= ( RoothaanEffectiveFockBuilder< Tile, Policy > &&  )
default

◆ operator=() [2/2]

template<typename Tile , typename Policy >
RoothaanEffectiveFockBuilder& mpqc::lcao::RoothaanEffectiveFockBuilder< Tile, Policy >::operator= ( RoothaanEffectiveFockBuilder< Tile, Policy > const &  )
default

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