Skip to main contentIBM Quantum Documentation
You are viewing the API reference for an old version of Qiskit SDK. Switch to latest version

MP2Info

MP2Info(qmolecule, threshold=1e-12) GitHub(opens in a new tab)

A utility class for Moller-Plesset 2nd order (MP2) information

Each double excitation given by [i,a,j,b] has a coefficient computed using

coeff = -(2 * Tiajb - Tibja)/(oe[b] + oe[a] - oe[i] - oe[j])

where oe[] is the orbital energy

and an energy delta given by

e_delta = coeff * Tiajb

All the computations are done using the molecule orbitals but the indexes used in the excitation information passed in and out are in the block spin orbital numbering as normally used by the chemistry module.

A utility class for MP2 info

Parameters

  • qmolecule (QMolecule) – QMolecule from chemistry driver
  • threshold (float) – Computed coefficients and energy deltas will be set to zero if their value is below this threshold

Attributes

mp2_delta

Get the MP2 delta energy correction for the molecule

Returns

The MP2 delta energy

Return type

float

mp2_energy

Get the MP2 energy for the molecule

Returns

The MP2 energy

Return type

float


Methods

mp2_get_term_info

MP2Info.mp2_get_term_info(excitation_list, freeze_core=False, orbital_reduction=None)

With a reduced active space the set of used excitations can be less than allowing all available excitations. Given a (sub)set of excitations in the space this will return a list of correlation coefficients and a list of correlation energies ordered as per the excitation list provided.

Parameters

  • excitation_list (list) – A list of excitations for which to get the coeff and e_delta
  • freeze_core (bool) – Whether core orbitals are frozen or not
  • orbital_reduction (list) – An optional list of ints indicating removed orbitals

Returns

List of coefficients and list of energy deltas

Return type

Tuple(list, list)

Raises

ValueError – Excitation not present in mp2 terms

mp2_terms

MP2Info.mp2_terms(freeze_core=False, orbital_reduction=None)

Gets the set of MP2 terms for the molecule taking into account index adjustments due to frozen core and/or other orbital reduction

Parameters

  • freeze_core (bool) – Whether core orbitals are frozen or not
  • orbital_reduction (list) – An optional list of ints indicating removed orbitals

Returns

A dictionary of excitations where the key is a string in the form

from_to_from_to e.g. 0_4_6_10 and the value is a tuple of (coeff, e_delta)

Return type

dict

Was this page helpful?