Psi4
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
psi::TwoBodySOInt Class Reference

#include <sointegral_twobody.h>

Public Member Functions

 TwoBodySOInt (const std::shared_ptr< TwoBodyAOInt > &, const std::shared_ptr< IntegralFactory > &)
 
 TwoBodySOInt (const std::vector< std::shared_ptr< TwoBodyAOInt > > &tb, const std::shared_ptr< IntegralFactory > &integral)
 
 TwoBodySOInt (const std::shared_ptr< TwoBodyAOInt > &aoint, const std::shared_ptr< IntegralFactory > &intfac, const CdSalcList &cdsalcs)
 
 TwoBodySOInt (const std::vector< std::shared_ptr< TwoBodyAOInt > > &tb, const std::shared_ptr< IntegralFactory > &integral, const CdSalcList &cdsalcs)
 
virtual ~TwoBodySOInt ()
 
bool only_totally_symmetric () const
 
void set_only_totally_symmetric (bool ots)
 
std::shared_ptr< SOBasisSetbasis () const
 
std::shared_ptr< SOBasisSetbasis1 () const
 
std::shared_ptr< SOBasisSetbasis2 () const
 
std::shared_ptr< SOBasisSetbasis3 () const
 
std::shared_ptr< SOBasisSetbasis4 () const
 
const double * buffer (int thread=0) const
 
void set_cutoff (double ints_tolerance)
 
template<typename TwoBodySOIntFunctor >
void compute_shell (const SOShellCombinationsIterator &shellIter, TwoBodySOIntFunctor &body)
 
template<typename TwoBodySOIntFunctor >
void compute_shell (int, int, int, int, TwoBodySOIntFunctor &body)
 
template<typename ShellIter , typename TwoBodySOIntFunctor >
void compute_quartets (ShellIter &shellIter, TwoBodySOIntFunctor &body)
 
template<typename TwoBodySOIntFunctor >
void compute_integrals (TwoBodySOIntFunctor &functor)
 
template<typename ShellIter , typename TwoBodySOIntFunctor >
void compute_quartets_deriv1 (ShellIter &shellIter, TwoBodySOIntFunctor &body)
 
template<typename TwoBodySOIntFunctor >
void compute_shell_deriv1 (const SOShellCombinationsIterator &shellIter, TwoBodySOIntFunctor &body)
 
template<typename TwoBodySOIntFunctor >
void compute_shell_deriv1 (int, int, int, int, TwoBodySOIntFunctor &body)
 
template<typename TwoBodySOIntFunctor >
void compute_integrals_deriv1 (TwoBodySOIntFunctor &functor)
 
template<typename TwoBodySOIntFunctor >
int compute_pq_pair_deriv1 (const int &p, const int &q, const size_t &pair_number, const TwoBodySOIntFunctor &body)
 

Protected Member Functions

template<typename TwoBodySOIntFunctor >
void provide_IJKL (int, int, int, int, TwoBodySOIntFunctor &body)
 
template<typename TwoBodySOIntFunctor >
void provide_IJKL_deriv1 (int ish, int jsh, int ksh, int lsh, TwoBodySOIntFunctor &body)
 
void common_init ()
 

Protected Attributes

std::vector< std::shared_ptr
< TwoBodyAOInt > > 
tb_
 
std::shared_ptr< IntegralFactoryintegral_
 
std::shared_ptr< SOBasisSetb1_
 
std::shared_ptr< SOBasisSetb2_
 
std::shared_ptr< SOBasisSetb3_
 
std::shared_ptr< SOBasisSetb4_
 
size_t size_
 
std::vector< double * > buffer_
 
std::vector< double * > temp_
 
std::vector< double * > temp2_
 
std::vector< double ** > deriv_
 
int iirrepoff_ [8]
 
int jirrepoff_ [8]
 
int kirrepoff_ [8]
 
int lirrepoff_ [8]
 
std::shared_ptr< PetiteListpetite1_
 
std::shared_ptr< PetiteListpetite2_
 
std::shared_ptr< PetiteListpetite3_
 
std::shared_ptr< PetiteListpetite4_
 
std::shared_ptr< PointGrouppg_
 
std::shared_ptr< DCDdcd_
 
bool only_totally_symmetric_
 
int nthread_
 
std::string comm_
 
int nproc_
 
int me_
 
double cutoff_
 
const CdSalcListcdsalcs_
 

Constructor & Destructor Documentation

psi::TwoBodySOInt::TwoBodySOInt ( const std::shared_ptr< TwoBodyAOInt > &  tb,
const std::shared_ptr< IntegralFactory > &  integral 
)
psi::TwoBodySOInt::TwoBodySOInt ( const std::vector< std::shared_ptr< TwoBodyAOInt > > &  tb,
const std::shared_ptr< IntegralFactory > &  integral 
)
psi::TwoBodySOInt::TwoBodySOInt ( const std::shared_ptr< TwoBodyAOInt > &  aoint,
const std::shared_ptr< IntegralFactory > &  intfac,
const CdSalcList cdsalcs 
)
psi::TwoBodySOInt::TwoBodySOInt ( const std::vector< std::shared_ptr< TwoBodyAOInt > > &  tb,
const std::shared_ptr< IntegralFactory > &  integral,
const CdSalcList cdsalcs 
)
psi::TwoBodySOInt::~TwoBodySOInt ( )
virtual

Member Function Documentation

std::shared_ptr< SOBasisSet > psi::TwoBodySOInt::basis ( ) const
std::shared_ptr< SOBasisSet > psi::TwoBodySOInt::basis1 ( ) const
std::shared_ptr< SOBasisSet > psi::TwoBodySOInt::basis2 ( ) const
std::shared_ptr< SOBasisSet > psi::TwoBodySOInt::basis3 ( ) const
std::shared_ptr< SOBasisSet > psi::TwoBodySOInt::basis4 ( ) const
const double* psi::TwoBodySOInt::buffer ( int  thread = 0) const
inline
void psi::TwoBodySOInt::common_init ( void  )
protected
template<typename TwoBodySOIntFunctor >
void psi::TwoBodySOInt::compute_integrals ( TwoBodySOIntFunctor &  functor)
template<typename TwoBodySOIntFunctor >
void psi::TwoBodySOInt::compute_integrals_deriv1 ( TwoBodySOIntFunctor &  functor)
template<typename TwoBodySOIntFunctor >
int psi::TwoBodySOInt::compute_pq_pair_deriv1 ( const int &  p,
const int &  q,
const size_t &  pair_number,
const TwoBodySOIntFunctor &  body 
)
inline
template<typename ShellIter , typename TwoBodySOIntFunctor >
void psi::TwoBodySOInt::compute_quartets ( ShellIter &  shellIter,
TwoBodySOIntFunctor &  body 
)
inline
template<typename ShellIter , typename TwoBodySOIntFunctor >
void psi::TwoBodySOInt::compute_quartets_deriv1 ( ShellIter &  shellIter,
TwoBodySOIntFunctor &  body 
)
inline
template<typename TwoBodySOIntFunctor >
void psi::TwoBodySOInt::compute_shell ( const SOShellCombinationsIterator shellIter,
TwoBodySOIntFunctor &  body 
)
inline
template<typename TwoBodySOIntFunctor >
void psi::TwoBodySOInt::compute_shell ( int  uish,
int  ujsh,
int  uksh,
int  ulsh,
TwoBodySOIntFunctor &  body 
)
template<typename TwoBodySOIntFunctor >
void psi::TwoBodySOInt::compute_shell_deriv1 ( const SOShellCombinationsIterator shellIter,
TwoBodySOIntFunctor &  body 
)
inline
template<typename TwoBodySOIntFunctor >
void psi::TwoBodySOInt::compute_shell_deriv1 ( int  uish,
int  ujsh,
int  uksh,
int  ulsh,
TwoBodySOIntFunctor &  body 
)
bool psi::TwoBodySOInt::only_totally_symmetric ( ) const
inline
template<typename TwoBodySOIntFunctor >
void psi::TwoBodySOInt::provide_IJKL ( int  ish,
int  jsh,
int  ksh,
int  lsh,
TwoBodySOIntFunctor &  body 
)
protected
template<typename TwoBodySOIntFunctor >
void psi::TwoBodySOInt::provide_IJKL_deriv1 ( int  ish,
int  jsh,
int  ksh,
int  lsh,
TwoBodySOIntFunctor &  body 
)
protected
void psi::TwoBodySOInt::set_cutoff ( double  ints_tolerance)
inline
void psi::TwoBodySOInt::set_only_totally_symmetric ( bool  ots)
inline

Member Data Documentation

std::shared_ptr<SOBasisSet> psi::TwoBodySOInt::b1_
protected
std::shared_ptr<SOBasisSet> psi::TwoBodySOInt::b2_
protected
std::shared_ptr<SOBasisSet> psi::TwoBodySOInt::b3_
protected
std::shared_ptr<SOBasisSet> psi::TwoBodySOInt::b4_
protected
std::vector<double *> psi::TwoBodySOInt::buffer_
protected
const CdSalcList* psi::TwoBodySOInt::cdsalcs_
protected
std::string psi::TwoBodySOInt::comm_
protected
double psi::TwoBodySOInt::cutoff_
protected
std::shared_ptr<DCD> psi::TwoBodySOInt::dcd_
protected
std::vector<double **> psi::TwoBodySOInt::deriv_
protected
int psi::TwoBodySOInt::iirrepoff_[8]
protected
std::shared_ptr<IntegralFactory> psi::TwoBodySOInt::integral_
protected
int psi::TwoBodySOInt::jirrepoff_[8]
protected
int psi::TwoBodySOInt::kirrepoff_[8]
protected
int psi::TwoBodySOInt::lirrepoff_[8]
protected
int psi::TwoBodySOInt::me_
protected
int psi::TwoBodySOInt::nproc_
protected
int psi::TwoBodySOInt::nthread_
protected
bool psi::TwoBodySOInt::only_totally_symmetric_
protected
std::shared_ptr<PetiteList> psi::TwoBodySOInt::petite1_
protected
std::shared_ptr<PetiteList> psi::TwoBodySOInt::petite2_
protected
std::shared_ptr<PetiteList> psi::TwoBodySOInt::petite3_
protected
std::shared_ptr<PetiteList> psi::TwoBodySOInt::petite4_
protected
std::shared_ptr<PointGroup> psi::TwoBodySOInt::pg_
protected
size_t psi::TwoBodySOInt::size_
protected
std::vector<std::shared_ptr<TwoBodyAOInt> > psi::TwoBodySOInt::tb_
protected
std::vector<double *> psi::TwoBodySOInt::temp2_
protected
std::vector<double *> psi::TwoBodySOInt::temp_
protected

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