#include <mbpt.h>
Inheritance diagram for sc::MBPT2:
Public Member Functions | |
MBPT2 (StateIn &) | |
MBPT2 (const Ref< KeyVal > &) | |
The KeyVal constructor. | |
void | save_data_state (StateOut &) |
Save the base classes (with save_data_state) and the members in the same order that the StateIn CTOR initializes them. | |
Ref< SCF > | ref () |
double | ref_energy () |
double | corr_energy () |
RefSCVector | ref_energy_gradient () |
RefSCVector | corr_energy_gradient () |
int | nelectron () |
Returns the number of electrons. | |
int | nfzcore () const |
int | nfzvirt () const |
RefSymmSCMatrix | density () |
Returns the SO density. | |
int | spin_polarized () |
Return 1 if the alpha density is not equal to the beta density. | |
int | gradient_implemented () const |
int | value_implemented () const |
Information about the availability of values, gradients, and hessians. | |
void | symmetry_changed () |
Call this if you have changed the molecular symmetry of the molecule contained by this MolecularEnergy. | |
void | obsolete () |
Marks all results as being out of date. | |
void | print (std::ostream &o=ExEnv::out0()) const |
Print information about the object. | |
Protected Member Functions | |
void | init_variables () |
void | compute () |
Recompute at least the results that have compute true and are not already computed. | |
void | eigen (RefDiagSCMatrix &vals, RefSCMatrix &vecs, RefDiagSCMatrix &occs) |
void | compute_hsos_v1 () |
distsize_t | compute_v2_memory (int ni, int nfuncmax, int nbfme, int nshell, int ndocc, int nsocc, int nvir, int nproc) |
void | compute_hsos_v2 () |
void | compute_hsos_v2_lb () |
int | compute_cs_batchsize (size_t mem_static, int nocc_act) |
distsize_t | compute_cs_dynamic_memory (int ni, int nocc_act) |
int | make_cs_gmat (RefSymmSCMatrix &Gmat, double *DPmat) |
int | make_cs_gmat_new (RefSymmSCMatrix &Gmat, const RefSymmSCMatrix &DPmat) |
void | form_max_dens (double *DPmat, signed char *maxp) |
int | init_cs_gmat () |
void | done_cs_gmat () |
int | make_g_d_nor (RefSymmSCMatrix &Gmat, double *DPmat, const double *mgdbuff) |
void | cs_cphf (double **scf_vector, double *Laj, double *eigval, RefSCMatrix &P2aj) |
void | s2pdm_contrib (const double *intderbuf, double *PHF, double *P2AO, double **hf_ginter, double **ginter) |
void | hcore_cs_grad (double *PHF, double *PMP2, double **hf_ginter, double **ginter) |
void | overlap_cs_grad (double *WHF, double *WMP2, double **hf_ginter, double **ginter) |
void | compute_cs_grad () |
Protected Attributes | |
Ref< SCF > | reference_ |
Ref< MemoryGrp > | mem |
int | nfzc |
int | nfzv |
size_t | mem_alloc |
double | cphf_epsilon_ |
int | eliminate_in_gmat_ |
const double * | intbuf_ |
Ref< TwoBodyInt > | tbint_ |
Ref< TwoBodyInt > * | tbints_ |
Ref< TwoBodyDerivInt > * | tbintder_ |
int | nbasis |
int | noso |
Ref< MessageGrp > | msg_ |
int | nvir |
int | nocc |
int | nsocc |
Ref< ThreadGrp > | thr_ |
int | dynamic_ |
double | print_percent_ |
int | max_norb_ |
int * | symorb_irrep_ |
int * | symorb_num_ |
char * | method_ |
char * | algorithm_ |
int | do_d1_ |
int | do_d2_ |
int | nfuncmax |
double | hf_energy_ |
RefSCVector | hf_gradient_ |
double | restart_ecorr_ |
int | restart_orbital_v1_ |
int | restart_orbital_memgrp_ |
The KeyVal constructor.
reference
nfzc
nfzv
memory
method
mp
opt1
opt2
zapt
algorithm
memgrp
v1
v2
v2lb
The v1 and v2 algorithms are discussed in Ida M. B. Nielsen and Edward T. Seidl, J. Comp. Chem. 16, 1301 (1995). The memgrp algorithm is discussed in Ida M. B. Nielsen, Chem. Phys. Lett. 255, 210 (1996).
memorygrp
void sc::MBPT2::compute | ( | ) | [protected, 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.
Reimplemented in sc::MBPT2_R12.
void sc::MBPT2::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.
Reimplemented in sc::MBPT2_R12.
int sc::MBPT2::value_implemented | ( | ) | const [virtual] |
Information about the availability of values, gradients, and hessians.
Reimplemented from sc::Function.
Reimplemented in sc::MBPT2_R12.
void sc::MBPT2::symmetry_changed | ( | ) | [virtual] |
Call this if you have changed the molecular symmetry of the molecule contained by this MolecularEnergy.
Reimplemented from sc::Wavefunction.
void sc::MBPT2::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.
Reimplemented in sc::MBPT2_R12.