mpqc::lcao::DecoratedOrbitalSpace< Array, OrbitalAttribute, AttributeTag >::Provider Class Referenceabstract

Documentation

template<typename Array, typename OrbitalAttribute, typename AttributeTag = std::true_type>
class mpqc::lcao::DecoratedOrbitalSpace< Array, OrbitalAttribute, AttributeTag >::Provider

every class that can provide DecoratedOrbitalSpace will publicly inherit from DecoratedOrbitalSpace::Provider

See also
Provides

Public Member Functions

virtual bool can_evaluate (DecoratedOrbitalSpace *space=nullptr)=0
 
virtual void evaluate (DecoratedOrbitalSpace *space, double target_precision=0, std::size_t target_lcao_blocksize=default_lcao_blocksize)=0
 computes an DecoratedOrbitalSpace and assigns to *space More...
 

Static Public Attributes

static constexpr const std::size_t default_lcao_blocksize
 

Member Function Documentation

◆ can_evaluate()

template<typename Array , typename OrbitalAttribute , typename AttributeTag = std::true_type>
virtual bool mpqc::lcao::DecoratedOrbitalSpace< Array, OrbitalAttribute, AttributeTag >::Provider::can_evaluate ( DecoratedOrbitalSpace space = nullptr)
pure virtual
Returns
true if DecoratedOrbitalSpace can be computed.

◆ evaluate()

template<typename Array , typename OrbitalAttribute , typename AttributeTag = std::true_type>
virtual void mpqc::lcao::DecoratedOrbitalSpace< Array, OrbitalAttribute, AttributeTag >::Provider::evaluate ( DecoratedOrbitalSpace space,
double  target_precision = 0,
std::size_t  target_lcao_blocksize = default_lcao_blocksize 
)
pure virtual

computes an DecoratedOrbitalSpace and assigns to *space

Parameters
spacepointer to the DecoratedOrbitalSpace object that will contain the result
target_precisionoptional precision parameter, its use depends on the type of Provider (some Providers will ignore it, some will use as the guidance on the precision of the energy, etc.)
target_lcao_blocksizeoptional parameter to determine the average blocksize of the LCAO dimension (blocking of the AO dimension is determined by the clustering of the Molecule). May be ignored, hence it is recommended to reblock the coefficients as needed.

Member Data Documentation

◆ default_lcao_blocksize

template<typename Array , typename OrbitalAttribute , typename AttributeTag = std::true_type>
constexpr const std::size_t mpqc::lcao::DecoratedOrbitalSpace< Array, OrbitalAttribute, AttributeTag >::Provider::default_lcao_blocksize
staticconstexpr

The documentation for this class was generated from the following file:
static constexpr const std::size_t default_lcao_blocksize
Definition: orbital_space.h:44