MPQC  3.0.0-alpha
Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes
sc::PsiCorrWavefunction_PT2R12 Class Reference

PsiCorrWavefunction_PT2R12: a corrlated wave function with a perturbational explicitly correlated correction. More...

#include <chemistry/qc/psi/psiwfn.h>

Inheritance diagram for sc::PsiCorrWavefunction_PT2R12:
Inheritance graph
[legend]

List of all members.

Public Member Functions

 PsiCorrWavefunction_PT2R12 (const Ref< KeyVal > &keyval)
 PsiCorrWavefunction_PT2R12 (StateIn &s)
void save_data_state (StateOut &s)
 Save the base classes (with save_data_state) and the members in the same order that the StateIn CTOR initializes them.
RefSymmSCMatrix onepdm_refmo (const SpinCase1 &spin)
 This function should be used to get the onepdm's from Psi, transformed to reference MO's.
RefSymmSCMatrix twopdm_refmo (const SpinCase2 &pairspin)
 This function should be used to get the onepdm's from Psi, transformed to reference MO's.
RefSymmSCMatrix lambda_refmo (const SpinCase2 &pairspin)
 This function should be used to get the two-particle lambda's from Psi, transformed to reference MO's.
RefSCMatrix C (SpinCase2 S)
 Returns the geminal coefficients.
RefSCMatrix V_genref_projector2 (SpinCase2 pairspin)
RefSCMatrix V_transformed_by_C (SpinCase2 pairspin)
RefSymmSCMatrix X_transformed_by_C (SpinCase2 pairspin)
RefSymmSCMatrix B_transformed_by_C (SpinCase2 pairspin)
double compute_DC_energy_GenRefansatz2 ()
 computes the projected contribution to the energy.
RefSCVector dipolemoments (const Ref< DipoleData > &dipoledata=new DipoleData())
 Returns the dipole moments for closed shell wave functions from onepdm's (mainly for testing).
double energy_HF ()
double energy_conventional ()
double energy_conventional_so ()
double energy_PT2R12_projector1 (SpinCase2 pairspin)
 This function computes the "old" General_PT2R12 correction, i.e. the one invoking projector 1.
double energy_PT2R12_projector2 (SpinCase2 pairspin)
void print_pair_energies (const RefSCMatrix &Contrib_mat, SpinCase2 pairspin)
 Prints the pair energies as a trace of the given matrix Contrib_mat.
const Ref< R12WavefunctionWorld > & r12world () const

Protected Types

enum  onepdm_type { HF = 0, correlated = 1 }

Protected Member Functions

virtual RefSCMatrix MPQC2PSI_transform_matrix (SpinCase1 spin)=0
 MPQC to Psi transform matrix if Psi uses QT ordering.
void write_input (int convergence)
 MPQC to Psi transform matrix if Psi uses ras ordering.
RefSymmSCMatrix hcore_mo ()
 Returns Hcore in MO basis.
RefSymmSCMatrix hcore_mo (SpinCase1 spin)
RefSymmSCMatrix moints ()
 molecular integrals in chemist's notation
RefSCMatrix moints (SpinCase2 pairspin)
RefSCMatrix g (SpinCase2 pairspin)
 This is the g (in Dirac notation) that should be used.
RefSCMatrix f (SpinCase1 spin)
 general-reference Fock atrix (cf.
RefSCMatrix phi_HF (SpinCase2 pairspin)
 phi of a single-reference Hartree-Fock reference (needed only for debugging)
RefSCMatrix phi_twoelec (SpinCase2 pairspin)
 phi not truncated in lambda, but without the three-pdm.
RefSCMatrix phi (SpinCase2 pairspin)
RefSymmSCMatrix phi_cumulant (SpinCase2 pairspin)
RefSymmSCMatrix onepdm_transformed (const SpinCase1 &spin)
 Returns the Psi3 computed correlated onepdm's transformed to MPQC MO's. Function called from function onepdm_refmo.
RefSymmSCMatrix onepdm_transformed ()
 Returns the closed shell total onepdm_transformed, i.e. Alpha plus Beta, transformed to MPQC MO's.
RefSymmSCMatrix onepdm_refmo_HF (const SpinCase1 &spin)
 Returns the Hartree-Fock onepdm (Just 1's on the occ-occ block diagonal).
RefSymmSCMatrix twopdm_transformed ()
 Returns the closed shell total twopdm_transformed, i.e. Alpha plus Beta, in chemist's (Mulliken) notation, transformed to MPQC MO's.
RefSymmSCMatrix twopdm_transformed_dirac ()
 Returns the closed shell total twopdm_transformed, i.e. Alpha plus Beta, in Dirac notation, transformed to MPQC MO's.
RefSymmSCMatrix twopdm_transformed_dirac (const SpinCase2 &pairspin)
 Returns the Psi3 computed correlated twopdm's tranformed to MPQC MO's. Function called from function twopdm_refmo.
RefSymmSCMatrix twopdm_refmo_from_onepdm (const SpinCase2 &pairspin)
 Returns the Psi3 computed correlated onepdm's tranformed to MPQC MO's.

Protected Attributes

size_t memory_r12_
Ref< SCFreference_mpqc_
Ref< R12IntEvalr12eval_
Ref< R12WavefunctionWorldr12world_
onepdm_type opdm_type_
bool tpdm_from_opdms_
bool exactgamma_phi_twoelec_
int debug_
 use the exact gamma for two-electron systems.

Detailed Description

PsiCorrWavefunction_PT2R12: a corrlated wave function with a perturbational explicitly correlated correction.


Member Function Documentation

RefSCMatrix sc::PsiCorrWavefunction_PT2R12::f ( SpinCase1  spin) [protected]

general-reference Fock atrix (cf.

eqn. (71b) of W. Kutzelnigg, D. Mukherjee, J. Chem Phys. 107 (1997) p. 432) if opdm_ in R12WavefunctionWorld is set, otherwise it returns the ordinary Fock operator.

RefSCMatrix sc::PsiCorrWavefunction_PT2R12::phi_twoelec ( SpinCase2  pairspin) [protected]

phi not truncated in lambda, but without the three-pdm.

This should be always used for two-electron systems.

Save the base classes (with save_data_state) and the members in the same order that the StateIn CTOR initializes them.

This must be implemented by the derived class if the class has data.

Reimplemented from sc::PsiCorrWavefunction.


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

Generated at Sat Jul 7 2012 11:52:56 for MPQC 3.0.0-alpha using the documentation package Doxygen 1.8.0.