occ
Loading...
Searching...
No Matches
occ::qm::IntegralEngineDF Class Reference

#include <integral_engine_df.h>

Public Types

enum  Policy { Choose , Direct , Stored }
 
using ShellPairList = std::vector< std::vector< size_t > >
 
using ShellList = std::vector< Shell >
 
using AtomList = std::vector< occ::core::Atom >
 
using ShellKind = Shell::Kind
 
using Op = cint::Operator
 
using Buffer = std::vector< double >
 
using IntegralResult = IntegralEngine::IntegralResult< 3 >
 

Public Member Functions

 IntegralEngineDF (const AtomList &atoms, const ShellList &ao, const ShellList &df)
 
Mat exchange (const MolecularOrbitals &mo)
 
Mat coulomb (const MolecularOrbitals &mo)
 
JKPair coulomb_and_exchange (const MolecularOrbitals &mo)
 
Mat fock_operator (const MolecularOrbitals &mo)
 
void set_integral_policy (Policy p)
 
Policy integral_policy () const
 
void set_range_separated_omega (double omega)
 
void set_precision (double precision)
 
double precision () const
 
const IntegralEngineao_engine () const
 
const IntegralEngineaux_engine () const
 
const Matintegral_store () const
 
void compute_stored_integrals ()
 
Eigen::Tensor< double, 4 > four_center_integrals_tensor () const
 
MP2Components compute_df_mp2_energy (const MolecularOrbitals &mo, const Vec &orbital_energies, const MP2OrbitalSpec &orbital_spec) const
 

Member Typedef Documentation

◆ AtomList

◆ Buffer

using occ::qm::IntegralEngineDF::Buffer = std::vector<double>

◆ IntegralResult

◆ Op

◆ ShellKind

◆ ShellList

◆ ShellPairList

using occ::qm::IntegralEngineDF::ShellPairList = std::vector<std::vector<size_t> >

Member Enumeration Documentation

◆ Policy

Enumerator
Choose 
Direct 
Stored 

Constructor & Destructor Documentation

◆ IntegralEngineDF()

occ::qm::IntegralEngineDF::IntegralEngineDF ( const AtomList atoms,
const ShellList ao,
const ShellList df 
)

Member Function Documentation

◆ ao_engine()

const IntegralEngine & occ::qm::IntegralEngineDF::ao_engine ( ) const
inline

◆ aux_engine()

const IntegralEngine & occ::qm::IntegralEngineDF::aux_engine ( ) const
inline

◆ compute_df_mp2_energy()

MP2Components occ::qm::IntegralEngineDF::compute_df_mp2_energy ( const MolecularOrbitals mo,
const Vec &  orbital_energies,
const MP2OrbitalSpec orbital_spec 
) const

◆ compute_stored_integrals()

void occ::qm::IntegralEngineDF::compute_stored_integrals ( )

◆ coulomb()

Mat occ::qm::IntegralEngineDF::coulomb ( const MolecularOrbitals mo)

◆ coulomb_and_exchange()

JKPair occ::qm::IntegralEngineDF::coulomb_and_exchange ( const MolecularOrbitals mo)

◆ exchange()

Mat occ::qm::IntegralEngineDF::exchange ( const MolecularOrbitals mo)

◆ fock_operator()

Mat occ::qm::IntegralEngineDF::fock_operator ( const MolecularOrbitals mo)

◆ four_center_integrals_tensor()

Eigen::Tensor< double, 4 > occ::qm::IntegralEngineDF::four_center_integrals_tensor ( ) const

◆ integral_policy()

Policy occ::qm::IntegralEngineDF::integral_policy ( ) const
inline

◆ integral_store()

const Mat & occ::qm::IntegralEngineDF::integral_store ( ) const
inline

◆ precision()

double occ::qm::IntegralEngineDF::precision ( ) const
inline

◆ set_integral_policy()

void occ::qm::IntegralEngineDF::set_integral_policy ( Policy  p)
inline

◆ set_precision()

void occ::qm::IntegralEngineDF::set_precision ( double  precision)

◆ set_range_separated_omega()

void occ::qm::IntegralEngineDF::set_range_separated_omega ( double  omega)

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