MADNESS 0.10.1
PNOTensors::Tensor_IJ_IK< T > Class Template Reference

#include <PNOTensors.h>

Public Member Functions

 Tensor_IJ_IK (size_t n)
 ~Tensor_IJ_IK ()=default
madness::Tensor< T > get (size_t i, size_t j, size_t k) const
std::tuple< size_t, bool > ijk (size_t i, size_t j, size_t k) const
bool is_initialized (size_t i, size_t j, size_t k) const
bool is_unique (size_t i, size_t j, size_t k) const
void reset ()
void set (size_t i, size_t j, size_t k, const madness::Tensor< T > &t)

Private Attributes

std::valarray< madness::Tensor< T > > data_
int n_

Detailed Description

template<typename T>
class PNOTensors::Tensor_IJ_IK< T >

stores pairs of pairs that share first index (i.e. {ij} and {ik}, where i >= j) as a 3-index tensor: case 1 – i >= j, i >= k: only need j >= k, or ij >= ik; store as {{ij},k} case 2 – i >= j, k > i: can also be found at Tensor_IJ_JK(k,i,j)

Constructor & Destructor Documentation

◆ Tensor_IJ_IK()

template<typename T>
PNOTensors::Tensor_IJ_IK< T >::Tensor_IJ_IK ( size_t n)
inline

References data_, n_, PNOTensors::ntri(), and reset().

◆ ~Tensor_IJ_IK()

template<typename T>
PNOTensors::Tensor_IJ_IK< T >::~Tensor_IJ_IK ( )
default

Member Function Documentation

◆ get()

template<typename T>
madness::Tensor< T > PNOTensors::Tensor_IJ_IK< T >::get ( size_t i,
size_t j,
size_t k ) const
inline

References data_, ijk(), k, and n_.

Referenced by madness::PNO::update_pno().

◆ ijk()

template<typename T>
std::tuple< size_t, bool > PNOTensors::Tensor_IJ_IK< T >::ijk ( size_t i,
size_t j,
size_t k ) const
inline

References k, n_, and PNOTensors::tridx().

Referenced by get(), is_initialized(), and set().

◆ is_initialized()

template<typename T>
bool PNOTensors::Tensor_IJ_IK< T >::is_initialized ( size_t i,
size_t j,
size_t k ) const
inline

◆ is_unique()

template<typename T>
bool PNOTensors::Tensor_IJ_IK< T >::is_unique ( size_t i,
size_t j,
size_t k ) const
inline

References k, and n_.

◆ reset()

template<typename T>
void PNOTensors::Tensor_IJ_IK< T >::reset ( )
inline

◆ set()

template<typename T>
void PNOTensors::Tensor_IJ_IK< T >::set ( size_t i,
size_t j,
size_t k,
const madness::Tensor< T > & t )
inline

Member Data Documentation

◆ data_

template<typename T>
std::valarray<madness::Tensor<T> > PNOTensors::Tensor_IJ_IK< T >::data_
private

◆ n_

template<typename T>
int PNOTensors::Tensor_IJ_IK< T >::n_
private

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