List of all members |
Classes |
Public Types |
Public Member Functions |
Protected Member Functions |
Protected Attributes |
Friends
mpqc::lcao::gaussian::Basis Class Reference
Collaboration diagram for mpqc::lcao::gaussian::Basis:
Documentation
Basis is a (nonrecursive) clustered sequence of libint2::Shell objects. The sequence is represented as a vector of vectors of shells.
Classes | |
class | Factory |
Factory is a ctor helper. More... | |
Public Types | |
using | Shell = ::mpqc::lcao::gaussian::Shell |
Public Types inherited from mpqc::DescribedClass | |
typedef std::shared_ptr< DescribedClass >(* | keyval_ctor_wrapper_type) (const KeyVal &) |
Public Member Functions | |
Basis () | |
creates an empty Basis More... | |
virtual | ~Basis () |
Basis (Basis const &) | |
Basis (Basis &&) | |
Basis & | operator= (Basis const &) |
Basis & | operator= (Basis &&) |
Basis (std::vector< ShellVec > shells) | |
construct a Basis from a clustered sequence of shells More... | |
std::vector< ShellVec > const & | cluster_shells () const |
ShellVec const & | cluster_shells (std::size_t cluster) const |
const std::vector< Shell > & | flattened_shells () const |
const std::vector< std::int64_t > & | bf2shell () const |
TiledArray::TiledRange1 | create_trange1 () const |
TiledArray::TiledRange1 | make_trange1 () const |
TiledArray::TiledRange1 | make_shell_trange1 () const |
TiledArray::TiledRange1 | make_trange1 (std::size_t cluster, std::size_t lobound=std::numeric_limits< std::size_t >::max()) const |
TiledArray::TiledRange1::range_type | make_range1 (std::size_t cluster, std::size_t lobound=std::numeric_limits< std::size_t >::max()) const |
int64_t | max_nprim () const |
int64_t | max_am () const |
int64_t | nfunctions () const |
int64_t | nshells () const |
int64_t | nclusters () const |
template<typename Archive > | |
std::enable_if< madness::archive::is_output_archive< Archive >::value >::type | serialize (const Archive &ar) |
template<typename Archive > | |
std::enable_if< madness::archive::is_input_archive< Archive >::value >::type | serialize (const Archive &ar) |
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 | |
void | init_trange1_hashmarks () const |
Protected Attributes | |
std::vector< ShellVec > | shells_ |
std::vector< std::size_t > | trange1_hashmarks_ |
std::vector< Shell > | flattened_shells_ |
std::vector< int64_t > | bf2shell_ |
int64_t | max_nprim_ = -1 |
int64_t | max_am_ = -1 |
int64_t | nfunctions_ = -1 |
int64_t | nshells_ = -1 |
Friends | |
std::shared_ptr< const Basis > | merge (const Basis &basis1, const Basis &basis2) |
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... | |
Member Typedef Documentation
◆ Shell
Constructor & Destructor Documentation
◆ Basis() [1/4]
|
default |
creates an empty Basis
◆ ~Basis()
|
virtualdefault |
◆ Basis() [2/4]
|
default |
◆ Basis() [3/4]
|
default |
◆ Basis() [4/4]
mpqc::lcao::gaussian::Basis::Basis | ( | std::vector< ShellVec > | shells | ) |
construct a Basis from a clustered sequence of shells
Member Function Documentation
◆ bf2shell()
const std::vector< int64_t > & mpqc::lcao::gaussian::Basis::bf2shell | ( | ) | const |
- Returns
- std::vector mapping basis function indices to shell indices
- Note
- the map is computed on first invocation, and memoized
◆ cluster_shells() [1/2]
std::vector< ShellVec > const & mpqc::lcao::gaussian::Basis::cluster_shells | ( | ) | const |
- Returns
- a reference to the vector of shell clusters
◆ cluster_shells() [2/2]
ShellVec const & mpqc::lcao::gaussian::Basis::cluster_shells | ( | std::size_t | cluster | ) | const |
- Parameters
-
cluster the cluster ordinal
- Returns
- a reference to the shells of cluster
cluster
◆ create_trange1()
TiledArray::TiledRange1 mpqc::lcao::gaussian::Basis::create_trange1 | ( | ) | const |
◆ flattened_shells()
const std::vector< Shell > & mpqc::lcao::gaussian::Basis::flattened_shells | ( | ) | const |
- Returns
- the vector of all shells
- Note
- the flattened shell list is computed on first invocation, and memoized
◆ init_trange1_hashmarks()
|
protected |
◆ make_range1()
TiledArray::TiledRange1::range_type mpqc::lcao::gaussian::Basis::make_range1 | ( | std::size_t | cluster, |
std::size_t | lobound = std::numeric_limits<std::size_t>::max() |
||
) | const |
Constructs a range for the given shell cluster
- Parameters
-
cluster the cluster index lobound the lobound index of the element range, the default is to use the lobound of the cluster's range in the basis (
- See also
- Basis::make_trange1() )
- Returns
- the {lobound, upbound} range of cluster
cluster
◆ make_shell_trange1()
TiledArray::TiledRange1 mpqc::lcao::gaussian::Basis::make_shell_trange1 | ( | ) | const |
- Returns
- the TiledArray::TiledRange1 object describing this basis as a sequence of shells
◆ make_trange1() [1/2]
TiledArray::TiledRange1 mpqc::lcao::gaussian::Basis::make_trange1 | ( | ) | const |
- Returns
- the TiledArray::TiledRange1 object describing this basis as a sequence of clusters
◆ make_trange1() [2/2]
TiledArray::TiledRange1 mpqc::lcao::gaussian::Basis::make_trange1 | ( | std::size_t | cluster, |
std::size_t | lobound = std::numeric_limits<std::size_t>::max() |
||
) | const |
Constructs a range for the given shell cluster tiled by shells
- Parameters
-
cluster the cluster index lobound the lobound index of the element range, the default is to use the lobound of the cluster's range in the basis (
- See also
- Basis::make_trange1() )
- Returns
- a TiledArray::TiledRange1 object describing cluster
cluster
as a sequence of shells
◆ max_am()
int64_t mpqc::lcao::gaussian::Basis::max_am | ( | ) | const |
- Returns
- the highest angular momentum of any shell in this Basis; if empty, returns -1
- Note
- the value is computed on the first invocation, then memoized
◆ max_nprim()
int64_t mpqc::lcao::gaussian::Basis::max_nprim | ( | ) | const |
- Returns
- the maximum number of primitives in any shell in this Basis; if empty, returns -1
- Note
- the value is computed on the first invocation, then memoized
◆ nclusters()
int64_t mpqc::lcao::gaussian::Basis::nclusters | ( | ) | const |
- Returns
- the total number of shell clusters in this Basis
◆ nfunctions()
int64_t mpqc::lcao::gaussian::Basis::nfunctions | ( | ) | const |
- Returns
- the total number of functions in this Basis
- Note
- the value is computed on the first invocation, then memoized
◆ nshells()
int64_t mpqc::lcao::gaussian::Basis::nshells | ( | ) | const |
- Returns
- the total number of shells in this Basis
- Note
- the value is computed on the first invocation, then memoized
◆ operator=() [1/2]
◆ operator=() [2/2]
◆ serialize() [1/2]
template<typename Archive >
|
inline |
◆ serialize() [2/2]
template<typename Archive >
|
inline |
Friends And Related Function Documentation
◆ merge
Member Data Documentation
◆ bf2shell_
|
mutableprotected |
◆ flattened_shells_
|
mutableprotected |
◆ max_am_
|
mutableprotected |
◆ max_nprim_
|
mutableprotected |
◆ nfunctions_
|
mutableprotected |
◆ nshells_
|
mutableprotected |
◆ shells_
|
protected |
◆ trange1_hashmarks_
|
mutableprotected |
The documentation for this class was generated from the following files: