qrunch.chemistry.calculators.tools.mp2_amplitudes

Double excitation (t2) amplitudes of a second-order Moller-Plesset (MP2) calculation.

Classes

MP2T2AmplitudesProtocol

Protocol for MP2 double excitation (t2) amplitudes.

RestrictedMP2T2Amplitudes

Restricted MP2 double excitation (t2) amplitudes.

UnrestrictedMP2T2Amplitudes

Unrestricted MP2 double excitation (t2) amplitudes.

class MP2T2AmplitudesProtocol

Bases: Protocol

Protocol for MP2 double excitation (t2) amplitudes.

__init__(*args, **kwargs)
property alpha_alpha: ndarray[tuple[Any, ...], dtype[float64]]

Alpha-alpha t2 amplitudes of shape (nocc_a, nocc_a, nvir_a, nvir_a).

property alpha_beta: ndarray[tuple[Any, ...], dtype[float64]]

Alpha-beta t2 amplitudes of shape (nocc_a, nocc_b, nvir_a, nvir_b).

property beta_beta: ndarray[tuple[Any, ...], dtype[float64]]

Beta-beta t2 amplitudes of shape (nocc_b, nocc_b, nvir_b, nvir_b).

property is_restricted: bool

Whether the amplitudes are restricted, False otherwise.

class RestrictedMP2T2Amplitudes

Bases: MP2T2AmplitudesProtocol

Restricted MP2 double excitation (t2) amplitudes.

Only the spatial-orbital t2 amplitudes are stored. The spin-resolved amplitudes are derived on access:

  • alpha_alpha = raw spatial-orbital t2

  • beta_beta = same as alpha_alpha (spin symmetry)

  • alpha_beta = same as alpha_alpha (spin symmetry)

Parameters:

alpha_alpha_amplitudes – The spatial-orbital t2 amplitudes of shape (nocc, nocc, nvir, nvir).

__init__(alpha_alpha_amplitudes: ndarray[tuple[Any, ...], dtype[float64]]) None
Parameters:

alpha_alpha_amplitudes (ndarray[tuple[Any, ...], dtype[float64]])

Return type:

None

property alpha_alpha: ndarray[tuple[Any, ...], dtype[float64]]

Alpha-alpha t2 amplitudes.

alpha_alpha_amplitudes: ndarray[tuple[Any, ...], dtype[float64]]
property alpha_beta: ndarray[tuple[Any, ...], dtype[float64]]

Alpha-beta t2 amplitudes.

property beta_beta: ndarray[tuple[Any, ...], dtype[float64]]

Beta-beta t2 amplitudes.

property is_restricted: Literal[True]

Whether amplitudes are restricted.

class UnrestrictedMP2T2Amplitudes

Bases: MP2T2AmplitudesProtocol

Unrestricted MP2 double excitation (t2) amplitudes.

All three spin-channel amplitude tensors are stored independently.

Parameters:
  • alpha_alpha_amplitudes – Alpha-alpha t2 amplitudes of shape (nocc_a, nocc_a, nvir_a, nvir_a).

  • alpha_beta_amplitudes – Alpha-beta t2 amplitudes of shape (nocc_a, nocc_b, nvir_a, nvir_b).

  • beta_beta_amplitudes – Beta-beta t2 amplitudes of shape (nocc_b, nocc_b, nvir_b, nvir_b).

__init__(alpha_alpha_amplitudes: ndarray[tuple[Any, ...], dtype[float64]], alpha_beta_amplitudes: ndarray[tuple[Any, ...], dtype[float64]], beta_beta_amplitudes: ndarray[tuple[Any, ...], dtype[float64]]) None
Parameters:
  • alpha_alpha_amplitudes (ndarray[tuple[Any, ...], dtype[float64]])

  • alpha_beta_amplitudes (ndarray[tuple[Any, ...], dtype[float64]])

  • beta_beta_amplitudes (ndarray[tuple[Any, ...], dtype[float64]])

Return type:

None

property alpha_alpha: ndarray[tuple[Any, ...], dtype[float64]]

Alpha-alpha t2 amplitudes.

alpha_alpha_amplitudes: ndarray[tuple[Any, ...], dtype[float64]]
property alpha_beta: ndarray[tuple[Any, ...], dtype[float64]]

Alpha-beta t2 amplitudes.

alpha_beta_amplitudes: ndarray[tuple[Any, ...], dtype[float64]]
property beta_beta: ndarray[tuple[Any, ...], dtype[float64]]

Beta-beta t2 amplitudes.

beta_beta_amplitudes: ndarray[tuple[Any, ...], dtype[float64]]
property is_restricted: Literal[False]

Whether amplitudes are unrestricted.