MP2 - Maple Help
For the best experience, we recommend viewing online help using Google Chrome or Microsoft Edge.

Online Help

All Products    Maple    MapleSim


QuantumChemistry

  

MP2

  

compute the ground state energy of a molecule by second-order many-body perturbation theory

Calling Sequence
Description
Outputs

Options
References
Examples

Calling Sequence

MP2(molecule, options)

Parameters

molecule

-

list of lists; each list has 4 elements, the string of an atom's symbol and atom's x, y, and z coordinates

options

-

(optional) equation(s) of the form option = value where option is one of symmetry, unit,  max_memory, nuclear_gradient, return_rdm, populations, conv_tol_hf, diis_hf, diis_space_hf, diis_start_cycle_hf, direct_scf_hf, direct_scf_tol_hf, level_shift_hf, max_cycle_hf, max_memory_scf_hf, nuclear_gradient_hf, populations_hf 

Description

• 

Second-order many-body perturbation theory (MP2) computes the ground state of a many-electron atom or molecule with the correlation energy treated by a second-order perturbation expansion around the Hartree-Fock energy.

• 

MP2 is non-variational, meaning that its energy is not necessarily an upper bound to the full CI energy in a given basis set.

Outputs

The table of following contents:

te_tot

-

float -- total electronic energy of the system

te_corr

-

float -- the difference between the MP2 energy and the Hartree-Fock energy

tmo_coeff

-

Matrix -- coefficients expressing molecular orbitals (columns) in terms of atomic orbitals (rows)

tmo_occ

-

Vector -- molecular orbital occupations

tt2

-

Array -- two-electron transition amplitudes

trdm1

-

Matrix -- one-particle reduced density matrix (1-RDM) in molecular-orbital (MO) representation

trdm2

-

Array -- two-particle reduced density matrix (2-RDM) in molecular-orbital (MO) representation

tnuclear_gradient

-

Matrix -- analytical nuclear gradient

tdipole

-

Vector -- dipole moment according to its x, y and z components

tpopulations

-

Matrix -- atomic-orbital populations

tcharges

-

Vector -- atomic charges from the populations

Options

• 

basis = string -- name of the basis set.  See Basis for a list of available basis sets.  Default is "sto-3g".

• 

spin = nonnegint -- twice the total spin S (= 2S). Default is 0.

• 

charge = nonnegint -- net charge of the molecule. Default is 0.

• 

symmetry = string/boolean -- is the Schoenflies symbol of the abelian point-group symmetry which can be one of the following:  D2h, C2h, C2v, D2, Cs, Ci, C2, C1. true finds the appropriate symmetry while false (default) does not use symmetry.

• 

unit = string -- "Angstrom" or "Bohr". Default is "Angstrom".

• 

max_memory = posint -- allowed memory in MB. Default is 4000.

• 

ghost = list of lists -- each list has the string of an atom's symbol and the atom's x, y, and z coordinates.  See Ghost Atoms.

• 

initial_mo = Matrix -- Matrix of MOs (columns) in terms of atomic orbitals (rows) that defines the MO basis set.

• 

nuclear_gradient = boolean -- option to return the analytical nuclear gradient if available. Default is false.

• 

return_rdm = string -- options to return the 1-RDM and/or 2-RDM: "none", "rdm1", "rdm1_and_rdm2". Default is "rdm1".

• 

populations = string -- atomic-orbital population analysis: "Mulliken" and "Mulliken/meta-Lowdin". Default is "Mulliken".

• 

Attributes for Hartree Fock:

• 

conv_tol_hf = float -- converge threshold. Default is 1010.

• 

diis_hf = boolean -- whether to employ diis. Default is true.

• 

diis_space_hf = posint -- diis's space size. By default, 8 Fock matrices and error vectors are stored.

• 

diis_start_cycle_hf = posint -- the step to start diis. Default is 1.

• 

direct_scf_hf = boolean -- direct SCF in which integrals are recomputed is used by default.

• 

direct_scf_tol_hf = float -- direct SCF cutoff threshold. Default is 1013.

• 

level_shift_hf = float/int -- level shift (in au) for virtual space. Default is 0.

• 

max_cycle_hf = posint -- max number of iterations. Default is 50.

• 

max_memory_scf_hf = posint -- allowed memory in MB. Default is 4000.

• 

nuclear_gradient_hf = boolean -- option to return the analytical nuclear gradient. Default is false.

• 

populations_hf = string -- atomic-orbital population analysis: "Mulliken" and "Mulliken/meta-Lowdin". Default is "Mulliken".

References

1. 

C. Møller and M. S. Plesset, Phys. Rev. 46, 618–622 (1934). "Note on an Approximation Treatment for Many-Electron Systems"

2. 

A. Szabo and N. S. Ostlund, Modern Quantum Chemistry: Introduction to Advanced Electronic Structure Theory (Dover Books, New York, 1996).

Examples

withQuantumChemistry:

An MP2 calculation of the hydrogen fluoride HF molecule

molecule  H,0,0,0,F,0,0,0.95;

moleculeH,0,0,0,F,0,0,0.95000000

(1)

output_hf  MP2molecule,basis=dz;

See Also

QuantumChemistry
HartreeFock