mpqc::lcao::pbc::TwoCenterBuilder< Tile, Policy > Class Template Reference

Documentation

template<typename Tile, typename Policy>
class mpqc::lcao::pbc::TwoCenterBuilder< Tile, Policy >

TwoCenterBuilder computes 2-center integral in zRHF that takes advantage of parallelized summation over unit cells for coulomb interaction

Public Types

using array_type = TA::DistArray< Tile, Policy >
 
using WorldObject_ = madness::WorldObject< TwoCenterBuilder< Tile, Policy > >
 
using TwoCenterBuilder_ = TwoCenterBuilder< Tile, Policy >
 
using Factory = ::mpqc::lcao::pbc::gaussian::AOFactory< Tile, Policy >
 
using Engine = ::mpqc::lcao::gaussian::ShrPool< libint2::Engine >
 
using Basis = ::mpqc::lcao::gaussian::Basis
 
using shellpair_list_t = std::vector< std::vector< size_t > >
 
using func_offset_list = std::unordered_map< size_t, std::tuple< size_t, size_t > >
 
using OperType = ::mpqc::Operator::Type
 

Public Member Functions

 TwoCenterBuilder (madness::World &world, std::shared_ptr< const Basis > basis, std::shared_ptr< const UnitCell > unitcell, Vector3i &R_max, Vector3i &RJ_max, int64_t R_size, int64_t RJ_size, shellpair_list_t &sig_shellpair_list)
 
 TwoCenterBuilder (Factory &ao_factory)
 
 ~TwoCenterBuilder ()=default
 
void set_charges (std::vector< AtomBasedClusterable > charges)
 
array_type eval (OperType oper, double target_precision=std::numeric_limits< double >::epsilon())
 

Member Typedef Documentation

◆ array_type

template<typename Tile , typename Policy >
using mpqc::lcao::pbc::TwoCenterBuilder< Tile, Policy >::array_type = TA::DistArray<Tile, Policy>

◆ Basis

template<typename Tile , typename Policy >
using mpqc::lcao::pbc::TwoCenterBuilder< Tile, Policy >::Basis = ::mpqc::lcao::gaussian::Basis

◆ Engine

template<typename Tile , typename Policy >
using mpqc::lcao::pbc::TwoCenterBuilder< Tile, Policy >::Engine = ::mpqc::lcao::gaussian::ShrPool<libint2::Engine>

◆ Factory

template<typename Tile , typename Policy >
using mpqc::lcao::pbc::TwoCenterBuilder< Tile, Policy >::Factory = ::mpqc::lcao::pbc::gaussian::AOFactory<Tile, Policy>

◆ func_offset_list

template<typename Tile , typename Policy >
using mpqc::lcao::pbc::TwoCenterBuilder< Tile, Policy >::func_offset_list = std::unordered_map<size_t, std::tuple<size_t, size_t> >

◆ OperType

template<typename Tile , typename Policy >
using mpqc::lcao::pbc::TwoCenterBuilder< Tile, Policy >::OperType = ::mpqc::Operator::Type

◆ shellpair_list_t

template<typename Tile , typename Policy >
using mpqc::lcao::pbc::TwoCenterBuilder< Tile, Policy >::shellpair_list_t = std::vector<std::vector<size_t> >

◆ TwoCenterBuilder_

template<typename Tile , typename Policy >
using mpqc::lcao::pbc::TwoCenterBuilder< Tile, Policy >::TwoCenterBuilder_ = TwoCenterBuilder<Tile, Policy>

◆ WorldObject_

template<typename Tile , typename Policy >
using mpqc::lcao::pbc::TwoCenterBuilder< Tile, Policy >::WorldObject_ = madness::WorldObject<TwoCenterBuilder<Tile, Policy> >

Constructor & Destructor Documentation

◆ TwoCenterBuilder() [1/2]

template<typename Tile , typename Policy >
mpqc::lcao::pbc::TwoCenterBuilder< Tile, Policy >::TwoCenterBuilder ( madness::World &  world,
std::shared_ptr< const Basis basis,
std::shared_ptr< const UnitCell unitcell,
Vector3i R_max,
Vector3i RJ_max,
int64_t  R_size,
int64_t  RJ_size,
shellpair_list_t sig_shellpair_list 
)
inline

◆ TwoCenterBuilder() [2/2]

template<typename Tile , typename Policy >
mpqc::lcao::pbc::TwoCenterBuilder< Tile, Policy >::TwoCenterBuilder ( Factory ao_factory)
inline

◆ ~TwoCenterBuilder()

template<typename Tile , typename Policy >
mpqc::lcao::pbc::TwoCenterBuilder< Tile, Policy >::~TwoCenterBuilder ( )
default

Member Function Documentation

◆ eval()

template<typename Tile , typename Policy >
array_type mpqc::lcao::pbc::TwoCenterBuilder< Tile, Policy >::eval ( OperType  oper,
double  target_precision = std::numeric_limits<double>::epsilon() 
)
inline

◆ set_charges()

template<typename Tile , typename Policy >
void mpqc::lcao::pbc::TwoCenterBuilder< Tile, Policy >::set_charges ( std::vector< AtomBasedClusterable charges)
inline

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