mpqc::lcao::cc::CCSD_T< Tile, Policy > Class Template Reference

Documentation

template<typename Tile, typename Policy>
class mpqc::lcao::cc::CCSD_T< Tile, Policy >

CCSD_T class that compute CCSD(T) triple calculation.

keyword to call this class CCSD(T)

Public Types

using TArray = TA::DistArray< Tile, Policy >
 
using block = TA::container::svector< std::size_t >
 

Public Member Functions

 CCSD_T (const KeyVal &kv)
 
virtual ~CCSD_T ()
 
void obsolete () override
 
double triples_energy () const
 

Protected Member Functions

void compute_ccsd_t ()
 
void evaluate (Energy *result) override
 

Member Typedef Documentation

◆ block

template<typename Tile , typename Policy >
using mpqc::lcao::cc::CCSD_T< Tile, Policy >::block = TA::container::svector<std::size_t>

◆ TArray

template<typename Tile , typename Policy >
using mpqc::lcao::cc::CCSD_T< Tile, Policy >::TArray = TA::DistArray<Tile, Policy>

Constructor & Destructor Documentation

◆ CCSD_T()

template<typename Tile , typename Policy >
mpqc::lcao::cc::CCSD_T< Tile, Policy >::CCSD_T ( const KeyVal kv)
inline

KeyVal constructor

Parameters
kvkeywords : all keywords for CCSD
Keyword Type Default Description
approach string coarse the (T) algorithm; valid choices are
  • coarse (parallelized over {a,b,c}, each assigned round-robin to single node) straight (for reference purposes only) laplace (Laplace MO-based implementation)
reblock_occ int 8 the block size used for the occupied orbitals
reblock_unocc int 8 the block size used for the unoccupied orbitals
reblock_inner int number of orbitals the block size for the inner (contraction) dimension; set to 0 to disable reblock inner; only used if approach!=laplace
replicate_ijka bool false whether to replicate integral <ij|ka>, the smallest 2-body integral in (T); valid only with approach=coarse
ccsd_t_gpu string none single or double use GPU to accelerate (T) using single precision or double precision
ccsd_t_profile int64_t 0 if greater than 0, limit the range of unoccupied orbitals in the coarse algorithm to this value, this is useful for profiling; e.g. setting this to 2 will result in 4 abc triples to be evaluated
quadrature_points int 4 number of quadrature points for the Laplace transform; valid only if approach=laplace

◆ ~CCSD_T()

template<typename Tile , typename Policy >
virtual mpqc::lcao::cc::CCSD_T< Tile, Policy >::~CCSD_T ( )
inlinevirtual

Member Function Documentation

◆ compute_ccsd_t()

template<typename Tile , typename Policy >
void mpqc::lcao::cc::CCSD_T< Tile, Policy >::compute_ccsd_t
protected

◆ evaluate()

template<typename Tile , typename Policy >
void mpqc::lcao::cc::CCSD_T< Tile, Policy >::evaluate ( Energy result)
overrideprotected

◆ obsolete()

template<typename Tile , typename Policy >
void mpqc::lcao::cc::CCSD_T< Tile, Policy >::obsolete ( )
inlineoverride

◆ triples_energy()

template<typename Tile , typename Policy >
double mpqc::lcao::cc::CCSD_T< Tile, Policy >::triples_energy ( ) const
inline

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