mpqc::lcao::gaussian::GaussianFactory Class Reference
Collaboration diagram for mpqc::lcao::gaussian::GaussianFactory:
Documentation
GaussianFactory is a Factory that computes integrals in Gaussian AO basis and caches shell/shellpair data
Public Types | |
using | fmm_shell_data_accessor_type = std::function< const FMMShellData &(std::size_t)> |
these represent precomputed shell and shell-pair data More... | |
using | sqvl_shell_data_accessor_type = std::function< const SQVlShellData &(std::size_t)> |
using | BasisDataRegistry = Registry< const Basis *, const BasisData< ShellData > > |
using | BasisPairDataRegistry = Registry< std::array< const Basis *, 2 >, const BasisPairData< ShellPairData > > |
using | libint_shellpair_data_accessor_type = shellpair_data_accessor_t |
using | fmm_shellpair_data_accessor_type = std::function< const FMMShellPairData &(std::size_t, std::size_t)> |
using | sqvl_shellpair_data_accessor_type = std::function< const SQVlShellPairData &(std::size_t, std::size_t)> |
Public Types inherited from mpqc::DescribedClass | |
typedef std::shared_ptr< DescribedClass >(* | keyval_ctor_wrapper_type) (const KeyVal &) |
Public Member Functions | |
virtual void | obsolete () override |
obsolete Factory More... | |
const std::shared_ptr< gaussian::OrbitalBasisRegistry > & | basis_registry () const |
const BasisDataRegistry & | basis_data_registry () const |
const BasisPairDataRegistry & | basispair_data_registry () const |
std::function< shellpair_data_accessor_t(const Basis *bs0, const Basis *bs1)> | make_libint_shellpair_data_accessor () const |
const BasisData< ShellData > & | basis_data (const Basis *bs) const |
libint_shellpair_data_accessor_type | libint_shell_data_accessor (const Basis *bs) const |
fmm_shell_data_accessor_type | fmm_shell_data_accessor (const Basis *bs) const |
sqvl_shell_data_accessor_type | sqvl_shell_data_accessor (const Basis *bs) const |
const BasisPairData< ShellPairData > & | basispair_data (const Basis *bs0, const Basis *bs1) const |
libint_shellpair_data_accessor_type | libint_shellpair_data_accessor (const Basis *bs0, const Basis *bs1) const |
fmm_shellpair_data_accessor_type | fmm_shellpair_data_accessor (const Basis *bs0, const Basis *bs1) const |
sqvl_shellpair_data_accessor_type | sqvl_shellpair_data_accessor (const Basis *bs0, const Basis *bs1) const |
Public Member Functions inherited from mpqc::lcao::Factory | |
std::shared_ptr< WavefunctionWorld > | wfn_world () const |
TA::World & | world () const |
const std::shared_ptr< const Molecule > & | atoms () const |
bool | accurate_time () const |
bool | verbose () const |
virtual FormulaRegistryBase & | registry ()=0 |
virtual FormulaRegistryBase & | direct_registry ()=0 |
Public Member Functions inherited from mpqc::DescribedClass | |
DescribedClass ()=default | |
virtual | ~DescribedClass () |
std::string | class_key () const |
Public Member Functions inherited from mpqc::enable_shared_from_this< DescribedClass > | |
virtual | ~enable_shared_from_this ()=default |
std::shared_ptr< DescribedClass > | shared_from_this () |
returns the pointer to this object More... | |
std::shared_ptr< std::add_const_t< DescribedClass > > | shared_from_this () const |
returns the pointer to this object More... | |
Public Member Functions inherited from mpqc::detail::virt_base_of_enable_shared_from_this | |
virtual | ~virt_base_of_enable_shared_from_this ()=default |
bool | shared_from_this_possible () const |
template<typename Target , typename = std::enable_if_t<!std::is_const_v<Target>>> | |
std::shared_ptr< Target > | cast_shared_from_this_to () |
returns the pointer to this cast to a particular type More... | |
template<typename Target > | |
std::shared_ptr< std::add_const_t< Target > > | cast_shared_from_this_to () const |
returns the pointer to this cast to a particular type More... | |
Protected Member Functions | |
GaussianFactory ()=default | |
GaussianFactory (const GaussianFactory &)=delete | |
GaussianFactory (GaussianFactory &&)=default | |
GaussianFactory & | operator= (GaussianFactory &&)=default |
GaussianFactory & | operator= (const GaussianFactory &)=delete |
virtual | ~GaussianFactory () noexcept=default |
Protected Member Functions inherited from mpqc::lcao::Factory | |
Factory ()=default | |
virtual | ~Factory ()=default |
void | init (const KeyVal &kv) |
The KeyVal initializer. More... | |
Factory (const KeyVal &kv)=delete | |
Additional Inherited Members | |
Static Public Member Functions inherited from mpqc::DescribedClass | |
static keyval_ctor_wrapper_type | type_to_keyval_ctor (const std::string &type_name) |
template<typename T > | |
static void | register_keyval_ctor () |
template<typename T > | |
static bool | is_registered () |
template<typename T > | |
static std::string | class_key () |
static const keyval_ctor_registry_type & | keyval_ctor_registry () |
returns const ref to the keyval ctor registry More... | |
Protected Attributes inherited from mpqc::lcao::Factory | |
bool | accurate_time_ |
fence when measuring walltime? More... | |
bool | verbose_ |
do verbose printing? More... | |
Member Typedef Documentation
◆ BasisDataRegistry
using mpqc::lcao::gaussian::GaussianFactory::BasisDataRegistry = Registry<const Basis*, const BasisData<ShellData> > |
◆ BasisPairDataRegistry
using mpqc::lcao::gaussian::GaussianFactory::BasisPairDataRegistry = Registry<std::array<const Basis*, 2>, const BasisPairData<ShellPairData> > |
◆ fmm_shell_data_accessor_type
using mpqc::lcao::gaussian::GaussianFactory::fmm_shell_data_accessor_type = std::function<const FMMShellData&(std::size_t)> |
these represent precomputed shell and shell-pair data
◆ fmm_shellpair_data_accessor_type
using mpqc::lcao::gaussian::GaussianFactory::fmm_shellpair_data_accessor_type = std::function<const FMMShellPairData&(std::size_t, std::size_t)> |
◆ libint_shellpair_data_accessor_type
using mpqc::lcao::gaussian::GaussianFactory::libint_shellpair_data_accessor_type = shellpair_data_accessor_t |
◆ sqvl_shell_data_accessor_type
using mpqc::lcao::gaussian::GaussianFactory::sqvl_shell_data_accessor_type = std::function<const SQVlShellData&(std::size_t)> |
◆ sqvl_shellpair_data_accessor_type
using mpqc::lcao::gaussian::GaussianFactory::sqvl_shellpair_data_accessor_type = std::function<const SQVlShellPairData&(std::size_t, std::size_t)> |
Constructor & Destructor Documentation
◆ GaussianFactory() [1/3]
|
protecteddefault |
◆ GaussianFactory() [2/3]
|
protecteddelete |
◆ GaussianFactory() [3/3]
|
protecteddefault |
◆ ~GaussianFactory()
|
protectedvirtualdefaultnoexcept |
Member Function Documentation
◆ basis_data()
const BasisData< ShellData > & mpqc::lcao::gaussian::GaussianFactory::basis_data | ( | const Basis * | bs | ) | const |
- Returns
- basis data for the given Basis object (constructs, if needed)
◆ basis_data_registry()
const GaussianFactory::BasisDataRegistry & mpqc::lcao::gaussian::GaussianFactory::basis_data_registry | ( | ) | const |
- Returns
- basis data registry
◆ basis_registry()
|
inline |
◆ basispair_data()
const BasisPairData< ShellPairData > & mpqc::lcao::gaussian::GaussianFactory::basispair_data | ( | const Basis * | bs0, |
const Basis * | bs1 | ||
) | const |
- Returns
- basis pair data for the given Basis objects (constructs, if needed)
◆ basispair_data_registry()
const GaussianFactory::BasisPairDataRegistry & mpqc::lcao::gaussian::GaussianFactory::basispair_data_registry | ( | ) | const |
- Returns
- basis pair data registry
◆ fmm_shell_data_accessor()
GaussianFactory::fmm_shell_data_accessor_type mpqc::lcao::gaussian::GaussianFactory::fmm_shell_data_accessor | ( | const Basis * | bs | ) | const |
- Returns
- FMM shell data accessor that accepts shell index
◆ fmm_shellpair_data_accessor()
GaussianFactory::fmm_shellpair_data_accessor_type mpqc::lcao::gaussian::GaussianFactory::fmm_shellpair_data_accessor | ( | const Basis * | bs0, |
const Basis * | bs1 | ||
) | const |
- Returns
- FMM shellpair data accessor that accepts shell indices
◆ libint_shell_data_accessor()
GaussianFactory::libint_shellpair_data_accessor_type mpqc::lcao::gaussian::GaussianFactory::libint_shell_data_accessor | ( | const Basis * | bs | ) | const |
- Returns
- libint's shellpair data accessor, with unit function on second center, that accepts basis function indices
◆ libint_shellpair_data_accessor()
GaussianFactory::libint_shellpair_data_accessor_type mpqc::lcao::gaussian::GaussianFactory::libint_shellpair_data_accessor | ( | const Basis * | bs0, |
const Basis * | bs1 | ||
) | const |
- Returns
- libint's shellpair data accessor that accepts basis function indices
◆ make_libint_shellpair_data_accessor()
std::function< shellpair_data_accessor_t(const Basis *bs0, const Basis *bs1)> mpqc::lcao::gaussian::GaussianFactory::make_libint_shellpair_data_accessor | ( | ) | const |
- Returns
- callable that generates accessors for libint's shellpair data
◆ obsolete()
|
inlineoverridevirtual |
obsolete Factory
Reimplemented from mpqc::lcao::Factory.
◆ operator=() [1/2]
|
protecteddelete |
◆ operator=() [2/2]
|
protecteddefault |
◆ sqvl_shell_data_accessor()
GaussianFactory::sqvl_shell_data_accessor_type mpqc::lcao::gaussian::GaussianFactory::sqvl_shell_data_accessor | ( | const Basis * | bs | ) | const |
- Returns
- SQVl shell data accessor that accepts shell index
◆ sqvl_shellpair_data_accessor()
GaussianFactory::sqvl_shellpair_data_accessor_type mpqc::lcao::gaussian::GaussianFactory::sqvl_shellpair_data_accessor | ( | const Basis * | bs0, |
const Basis * | bs1 | ||
) | const |
- Returns
- SQVl shellpair data accessor that accepts shell indices
The documentation for this class was generated from the following files:
- mpqc/chemistry/qc/lcao/factory/gaussian/ao_factory.h
- mpqc/chemistry/qc/lcao/factory/gaussian/ao_factory.cpp