mpqc::lcao::cc::CCSD_T_ReduceSymm< Tile, Policy > Struct Template Reference
Collaboration diagram for mpqc::lcao::cc::CCSD_T_ReduceSymm< Tile, Policy >:

Documentation

template<typename Tile, typename Policy>
struct mpqc::lcao::cc::CCSD_T_ReduceSymm< Tile, Policy >

CCSD_T_Reduce class: Reduce the symmetric CCSD(T) perturbation expressions $ \sum_{abcijk} \frac{W^{abc}_{ijk}}{D^{abc}_{ijk}} $ only computes the lower triangle of the expression.

Public Types

typedef ReduceBase< Tile, Policy >::result_type result_type
 
typedef ReduceBase< Tile, Policy >::argument_type argument_type
 
- Public Types inherited from mpqc::lcao::cc::ReduceBase< Tile, Policy >
typedef double result_type
 
typedef Tile argument_type
 

Public Member Functions

 CCSD_T_ReduceSymm (std::shared_ptr< const Eigen::VectorXd > vec, std::size_t n_occ, std::size_t n_frozen, std::array< std::size_t, 6 > offset)
 
 CCSD_T_ReduceSymm (CCSD_T_ReduceSymm const &)=default
 
void operator() (result_type &me, argument_type const &tile) const
 
- Public Member Functions inherited from mpqc::lcao::cc::ReduceBase< Tile, Policy >
 ReduceBase (std::shared_ptr< const Eigen::VectorXd > vec, std::size_t n_occ, std::size_t n_frozen, std::array< std::size_t, 6 > offset)
 
 ReduceBase (ReduceBase const &)=default
 Shallow copy operator. More...
 
result_type operator() () const
 
result_type operator() (result_type const &t) const
 
void operator() (result_type &me, result_type const &other) const
 

Additional Inherited Members

- Public Attributes inherited from mpqc::lcao::cc::ReduceBase< Tile, Policy >
std::shared_ptr< const Eigen::VectorXd > vec_
 
std::size_t n_occ_
 
std::size_t n_frozen_
 
std::array< std::size_t, 6 > offset_
 

Member Typedef Documentation

◆ argument_type

template<typename Tile , typename Policy >
typedef ReduceBase<Tile, Policy>::argument_type mpqc::lcao::cc::CCSD_T_ReduceSymm< Tile, Policy >::argument_type

◆ result_type

template<typename Tile , typename Policy >
typedef ReduceBase<Tile, Policy>::result_type mpqc::lcao::cc::CCSD_T_ReduceSymm< Tile, Policy >::result_type

Constructor & Destructor Documentation

◆ CCSD_T_ReduceSymm() [1/2]

template<typename Tile , typename Policy >
mpqc::lcao::cc::CCSD_T_ReduceSymm< Tile, Policy >::CCSD_T_ReduceSymm ( std::shared_ptr< const Eigen::VectorXd >  vec,
std::size_t  n_occ,
std::size_t  n_frozen,
std::array< std::size_t, 6 >  offset 
)
inline

Reduce symmetric CCSD(T) builder function

Parameters
[in]veceigen vectorXd contains the diagonal elements of the fock matrix (i.e. values for D)
[in]n_occnumber of active occupied orbital elemnts
[in]n_frozennumber of frozen occupied orbitals
[in]offset6 dimensional array which provides the blocking offsets for each index

◆ CCSD_T_ReduceSymm() [2/2]

template<typename Tile , typename Policy >
mpqc::lcao::cc::CCSD_T_ReduceSymm< Tile, Policy >::CCSD_T_ReduceSymm ( CCSD_T_ReduceSymm< Tile, Policy > const &  )
default

Member Function Documentation

◆ operator()()

template<typename Tile , typename Policy >
void mpqc::lcao::cc::CCSD_T_ReduceSymm< Tile, Policy >::operator() ( result_type me,
argument_type const &  tile 
) const
inline

Operator to compute the reduction of the peturbation expression using the lower triangle of the expression me += $ \sum_{c<=b<=a} \sum_{k<=j<=i} \frac{other^{abc}_{ijk}}{D^{abc}_{ijk}} $

Parameters
[in,out]methe value of the CCSD(T) expression provided tiles tile@param other the right hand side tile

The documentation for this struct was generated from the following file: