29 #ifndef __chemistry_qc_ccr12_ccsd_sub_bar_r12_h
30 #define __chemistry_qc_ccr12_ccsd_sub_bar_r12_h
32 #include <chemistry/qc/ccr12/ccsd_sub_r12.h>
33 #include <chemistry/qc/ccr12/ccr12_info.h>
51 if (!z->r12world()->r12tech()->ansatz()->diag()) {
53 z->denom_contraction(tildeV_, intermediate_);
54 z->
prod_iiii(tildeV_, intermediate_, energy_,
true);
55 return z->
get_e(energy_);
59 intermediate_->zero();
60 z->denom_contraction(gt2, intermediate_);
61 z->
prod_iiii(gt2, intermediate_, energy_,
true);
62 const double bterm = z->
get_e(energy_);
64 z->
prod_iiii(tildeV_, gt2, energy_,
false);
65 const double direct_en = 2.0*(z->
get_e(energy_));
66 return direct_en - bterm;
A template class that maintains references counts.
Definition: ref.h:361
double get_e(const Ref< Tensor > &)
Functions used in specific (i.e. derived) CC-R12 object.
void prod_iiii(const Ref< Tensor > &, const Ref< Tensor > &, Ref< Tensor > &, const bool transpose=false)
utilities for Lambda contribution in fixed-amp approaches
Definition: ccsd_sub_bar_r12.h:37
CCSD_Sub_R12 is the base class for some (2)R12 methods.
Definition: ccsd_sub_r12.h:38
Contains all MPQC code up to version 3.
Definition: mpqcin.h:14
CCR12_Info is the compilation of members that are used in CC and CC-R12 methods.
Definition: ccr12_info.h:50
Generated at Sun Jan 26 2020 23:23:57 for MPQC
3.0.0-alpha using the documentation package Doxygen
1.8.16.