MPQC  3.0.0-alpha
Public Member Functions | Static Public Member Functions
sc::PT2R12 Class Reference

PT2R12: a universal spin-free second-order R12 correction. More...

#include <chemistry/qc/mbptr12/pt2r12.h>

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

List of all members.

Public Member Functions

 PT2R12 (const Ref< KeyVal > &keyval)
 A KeyVal constructor is used to generate a PT2R12 object from the input.
 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.
void compute ()
 Recompute at least the results that have compute true and are not already computed.
void print (std::ostream &os=ExEnv::out0()) const
 Print information about the object.
RefSymmSCMatrix density ()
 Returns the SO density.
int spin_polarized ()
 Return 1 if the alpha density is not equal to the beta density.
int value_implemented () const
void set_desired_value_accuracy (double acc)
 Set the accuracy to which the value is to be computed.
const Ref< R12WavefunctionWorld > & r12world () const
 PT2R12 is an R12 Wavefunction.
Ref< R12IntEval > & get_r12eval ()
RefSCMatrix transform_MO ()
void obsolete ()
 Marks all results as being out of date.
int nelectron ()
 Returns the number of electrons.

Static Public Member Functions

static double zero_occupancy ()

Detailed Description

PT2R12: a universal spin-free second-order R12 correction.


Constructor & Destructor Documentation

sc::PT2R12::PT2R12 ( const Ref< KeyVal > &  keyval)

A KeyVal constructor is used to generate a PT2R12 object from the input.

This constructor uses keywords of R12WavefunctionWorld, plus following list of keywords.

KeywordTypeDefault

Description

referenceWavefunctionnone

the Wavefunction object

rdm2SpinFreeRDM<Two>none

the SpinFreeRDM<Two> object that provides the 2-RDM. It must be constructed from the object provided by the reference keyword.

omit_uoccbooleanfalse

if set to true, orbitals not occupied in reference will be omitted from consideration. This is useful if only geminal functions are used to treat electron correlation.

cabs_singlesbooleantrue

if set to true, compute 2nd-order CABS singes correction.

cabs_singles_h0stringdyall_1

the other options include dyall_2/complete/CI. dyall_1 uses Fock operator as H(1); dyall_2 includes both 1- and 2-particle operator in H(1), thus more complete; 'complete' refers to the partition that all operators inducing (real and pesudo) one-partilce occ->CABS transition are taken as H(1) while the other operators are classified as H(0); CI refers to a CI diagonalization procedure to account basis incompleteness (for one state).

cabs_singles_couplingbooleantrue

if set to true, include coupling between CABS and OBS virtuals; this is the preferred choice and it corresponds to the CABS singles correction without assuming EBC in single reference limit.


Member Function Documentation

void sc::PT2R12::compute ( ) [virtual]

Recompute at least the results that have compute true and are not already computed.

This should only be called by Result's members.

Implements sc::Compute.

void sc::PT2R12::obsolete ( ) [virtual]

Marks all results as being out of date.

Any subsequent access to results will cause Compute::compute() to be called.

Reimplemented from sc::Wavefunction.

void sc::PT2R12::save_data_state ( StateOut ) [virtual]

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::Wavefunction.

int sc::PT2R12::value_implemented ( ) const [inline, virtual]
Returns:
1 (value implemented) or 0 (value not implemented, default). Must be overridden for the class to be useful.

Reimplemented from sc::Function.


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

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