Documentation
specialization of mpqc::WavefunctionWorld to the LCAO case
Public Member Functions | |
WavefunctionWorld (KeyVal const &kv) | |
The KeyVal constructor. More... | |
WavefunctionWorld (KeyVal &&kv) | |
~WavefunctionWorld () override=default | |
const std::shared_ptr< gaussian::OrbitalBasisRegistry > & | basis_registry () const |
Return a reference to the basis registry. More... | |
template<typename F = AOFactory<MPQC_DEFAULT_REAL_TA_TILE_CLASS, MPQC_DEFAULT_TA_POLICY_CLASS>> | |
std::shared_ptr< F > | ao_factory () const |
template<typename F = LCAOFactory<MPQC_DEFAULT_REAL_TA_TILE_CLASS, MPQC_DEFAULT_TA_POLICY_CLASS>> | |
std::shared_ptr< F > | lcao_factory () const |
template<typename F = pbc::gaussian::AOFactory< MPQC_DEFAULT_REAL_TA_TILE_CLASS, MPQC_DEFAULT_TA_POLICY_CLASS>> | |
std::shared_ptr< F > | pbc_ao_factory () const |
template<typename F = pbc::GammaLCAOFactory<MPQC_DEFAULT_REAL_TA_TILE_CLASS, MPQC_DEFAULT_TA_POLICY_CLASS>> | |
std::shared_ptr< F > | pbc_gamma_lcao_factory () const |
template<typename Tile = MPQC_DEFAULT_REAL_TA_TILE_CLASS, typename Policy = MPQC_DEFAULT_TA_POLICY_CLASS> | |
std::shared_ptr< OrbitalSpaceRegistry< TA::DistArray< Tile, Policy > > > | orbital_registry () const |
template<typename Tile , typename Policy > | |
std::shared_ptr< OrbitalSpaceRegistry< DistArray< Tile, Policy > > > | orbital_registry () const |
template<typename Factory > | |
std::shared_ptr< Factory > | ao_factory () const |
template<typename Factory > | |
std::shared_ptr< Factory > | lcao_factory () const |
template<typename Factory > | |
std::shared_ptr< Factory > | pbc_ao_factory () const |
template<typename Factory > | |
std::shared_ptr< Factory > | pbc_gamma_lcao_factory () const |
Public Member Functions inherited from mpqc::WavefunctionWorld | |
WavefunctionWorld (KeyVal const &kv) | |
The KeyVal constructor. More... | |
WavefunctionWorld (KeyVal &&kv) | |
madness::World & | world () const |
Return a reference to the MADNESS world object. More... | |
const std::shared_ptr< const Molecule > & | atoms () const |
Return a reference to the molecule in the world. More... | |
const KeyVal & | kv () const noexcept |
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... | |
Additional Inherited Members | |
Public Types inherited from mpqc::DescribedClass | |
typedef std::shared_ptr< DescribedClass >(* | keyval_ctor_wrapper_type) (const KeyVal &) |
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... | |
Constructor & Destructor Documentation
◆ WavefunctionWorld() [1/2]
|
explicit |
The KeyVal constructor.
- Parameters
-
kv The KeyVal object; it will be queried for all keywords of OrbitalBasisRegistry, and the following keywords:
Keyword | Type | Default | Description |
---|---|---|---|
atoms | Molecule or UnitCell | none | |
molecule | Molecule | none | This will be queried only if atoms is |
not given. This keyword is deprecated and may be removed in the future |
◆ WavefunctionWorld() [2/2]
|
explicit |
Same as the ctor taking by lvalue ref, but useful if constructing KeyVal objects in-place, this will then need to register bare pointer to self in kv to be discoverable
◆ ~WavefunctionWorld()
|
overridevirtualdefault |
Reimplemented from mpqc::WavefunctionWorld.
Member Function Documentation
◆ ao_factory() [1/2]
std::shared_ptr<F> mpqc::lcao::WavefunctionWorld::ao_factory | ( | ) | const |
Create (if needed) and return an AO factory. For now, each world object can be associated with one AO factory associated with particular type F
. The first call to ao_factory will create a particular AO factory, hence all subsequent calls must be invoked with exactly the same F
type.
- Template Parameters
-
F an instance of Factory class template
- Exceptions
-
ProgrammingError if stored AOFactory uses different F
type
◆ ao_factory() [2/2]
std::shared_ptr<Factory> mpqc::lcao::WavefunctionWorld::ao_factory | ( | ) | const |
◆ basis_registry()
|
inline |
Return a reference to the basis registry.
◆ lcao_factory() [1/2]
std::shared_ptr<F> mpqc::lcao::WavefunctionWorld::lcao_factory | ( | ) | const |
Create (if needed) and return LCAOFactory. For now, each world object can be associated with one LCAO factory associated with particular type F
. The first call to lcao_factory() will create a particular LCAO factory, hence all subsequent calls must be invoked with exactly the same F
type.
- Template Parameters
-
F an instance of Factory class template
- Exceptions
-
ProgrammingError if stored LCAOFactory uses different F
type
- Note
- upon first invocation will also invoke orbital_registry()
◆ lcao_factory() [2/2]
std::shared_ptr<Factory> mpqc::lcao::WavefunctionWorld::lcao_factory | ( | ) | const |
◆ orbital_registry() [1/2]
std::shared_ptr<OrbitalSpaceRegistry<TA::DistArray<Tile, Policy> > > mpqc::lcao::WavefunctionWorld::orbital_registry | ( | ) | const |
Create (if needed) and return OrbitalSpaceRegistry. For now, each world object can be associated with one OrbitalSpaceRegistry associated with particular {Tile,Policy}. The first call to orbital_registry or lcao_factory will create a particular OrbitalSpaceRegistry, hence all subsequent calls must be invoked with exactly the same {Tile,Policy} types.
- Exceptions
-
ProgrammingError if stored OrbitalSpaceRegistry uses different {Tile,Policy} types
◆ orbital_registry() [2/2]
std::shared_ptr<OrbitalSpaceRegistry<DistArray<Tile, Policy> > > mpqc::lcao::WavefunctionWorld::orbital_registry | ( | ) | const |
◆ pbc_ao_factory() [1/2]
std::shared_ptr<F> mpqc::lcao::WavefunctionWorld::pbc_ao_factory | ( | ) | const |
Create (if needed) and return pbc::AOFactory. For now, each world object can be associated with one AO factory associated with particular type F
. The first call to ao_factory will create a particular AO factory, hence all subsequent calls must be invoked with exactly the same F
type.
- Template Parameters
-
F an instance of Factory class template
- Exceptions
-
ProgrammingError if stored AOFactory uses different F
type
◆ pbc_ao_factory() [2/2]
std::shared_ptr<Factory> mpqc::lcao::WavefunctionWorld::pbc_ao_factory | ( | ) | const |
◆ pbc_gamma_lcao_factory() [1/2]
std::shared_ptr<F> mpqc::lcao::WavefunctionWorld::pbc_gamma_lcao_factory | ( | ) | const |
Create (if needed) and return pbc::GammaLCAOFactory. For now, each world object can be associated with one LCAO factory associated with particular type F
. The first call to lcao_factory() will create a particular LCAO factory, hence all subsequent calls must be invoked with exactly the same F
type.
- Template Parameters
-
F an instance of Factory class template
- Exceptions
-
ProgrammingError if stored LCAOFactory uses different F
type
- Note
- upon first invocation will also invoke orbital_registry()
◆ pbc_gamma_lcao_factory() [2/2]
std::shared_ptr<Factory> mpqc::lcao::WavefunctionWorld::pbc_gamma_lcao_factory | ( | ) | const |
The documentation for this class was generated from the following files:
- mpqc/chemistry/qc/lcao/wfn/wfn_world.h
- mpqc/chemistry/qc/lcao/wfn/wfn_world.cpp