25 #ifndef _chemistry_qc_lmp2_lcorr_h
26 #define _chemistry_qc_lmp2_lcorr_h
30 #include <util/misc/scexception.h>
32 #include <math/optimize/diis.h>
33 #include <math/scmat/repl.h>
34 #include <math/scmat/matrix.h>
36 #include <chemistry/qc/basis/basis.h>
37 #include <chemistry/qc/basis/tbint.h>
38 #include <chemistry/qc/scf/scf.h>
40 #include <chemistry/qc/lmp2/sma.h>
41 #include <chemistry/qc/lmp2/domain.h>
42 #include <chemistry/qc/lmp2/util.h>
50 double W_eigval_threshold_;
54 std::vector<std::vector<int> > virb_to_bfns_;
57 std::map<domainmapvirbs_t, sma2::Array<2> > unique_W_;
58 std::map<domainmapvirbs_t, std::vector<double> > unique_eigvals_;
59 std::map<domainmapvirbs_t, sma2::Array<2> > unique_F_tilde_;
64 void compute_W_index_maps(
int blockdim,
int blockdim_nonred,
66 std::vector<int> &index_map1,
67 std::vector<int> &index_map2,
72 int n_unique_W()
const {
return unique_W_.size(); }
74 std::vector<double> &unique_eigvals(
const domainmapvirbs_t &i);
80 void compute_W(domainmapvirbs_t &virset,
120 #endif // _chemistry_qc_lmp2_lccsd_h
void init_virb_to_bfns(const sma2::Range &vir)
This must be called before compute_W is called.
The RefSCMatrix class is a smart pointer to an SCMatrix specialization.
Definition: matrix.h:135
void transform_array(sma2::Array< 2 > &A, sma2::Array< 2 > &B, sma2::Array< 2 > &C, sma2::Array< 2 > &D, const sc::Ref< sc::MessageGrp > &msg)
Transform A to D using transformation matrices B,C: D = B^T*A*C.
A Wavefunction is a MolecularEnergy that utilizies a GaussianBasisSet.
Definition: wfn.h:52
void clear()
Release stored data.
An Range represent a set of integers, [0, N).
Definition: sma.h:93
A base class for local correlation methods.
Definition: lcorr.h:48
void save_data_state(sc::StateOut &)
Save the base classes (with save_data_state) and the members in the same order that the StateIn CTOR ...
Ref< GaussianBasisSet > basis() const
Returns the basis set.
Definition: stateout.h:71
LCorr(const sc::Ref< sc::KeyVal > &)
Construct an LCorr object from KeyVal input.
Contains all MPQC code up to version 3.
Definition: mpqcin.h:14
void print_parameters() const
Print input parameters.
Generated at Sun Jan 26 2020 23:23:58 for MPQC
3.0.0-alpha using the documentation package Doxygen
1.8.16.