qrunch.chemistry.calculators.mp2_calculator
Ground state energy calculator using second-order Møller-Plesset (MP2) perturbation theory.
Classes
Class for performing second-order Møller-Plesset (MP2) calculations. |
|
Options to use for second-order Møller-Plesset (MP2) ground state calculations. |
- class MollerPlesset2GroundStateCalculator
Bases:
objectClass for performing second-order Møller-Plesset (MP2) calculations.
- __init__(options: MollerPlesset2GroundStateProblemCalculatorOptions | None = None) None
Initialize an instance of MollerPlesset2GroundStateProblemCalculator.
- Parameters:
options (MollerPlesset2GroundStateProblemCalculatorOptions | None) – Options to use for the calculation. None results in default options.
- Return type:
None
- calculate(problem: GeneralGroundStateProblem) GroundStateProblemCalculatorResult
- calculate(problem: ReactionPathProblem) ReactionPathProblemCalculatorResult
Solve the second-order Moller-Plesset (MP2) problem.
Note that the ground_state_problem may restrict the orbital space, in which case this is not a standard MP2 calculation but a calculation with a truncated orbital space. In case of a restricted orbital space the inactive energy contribution associated with the active space is included in the ground_state_problem.
The Hamiltonian for all geometries is assumed to be real.
- Parameters:
problem (RestrictedGroundStateProblem | LazyRestrictedGroundStateProblem | UnrestrictedGroundStateProblem | LazyUnrestrictedGroundStateProblem | RestrictedReactionPathProblem | UnrestrictedReactionPathProblem) – The problem to calculate the ground state energy / energies for.
- Return type:
GroundStateProblemCalculatorResult | ReactionPathProblemCalculatorResult
- calculate_t2_amplitudes(ground_state_problem: RestrictedGroundStateProblem | UnrestrictedGroundStateProblem) RestrictedMP2T2Amplitudes | UnrestrictedMP2T2Amplitudes
Calculate and return the MP2 double excitation (t2) amplitudes.
- Parameters:
ground_state_problem (RestrictedGroundStateProblem | UnrestrictedGroundStateProblem) – The ground state problem to calculate t2 amplitudes for.
- Return type:
- class MollerPlesset2GroundStateProblemCalculatorOptions
Bases:
DataclassPublicAPIOptions to use for second-order Møller-Plesset (MP2) ground state calculations.
All fields are immutable (
frozen=True) so an instance can be safely reused.- Parameters:
degeneracy_threshold – Minimum allowed gap between any occupied and virtual orbital energy. If \(|\varepsilon_a - \varepsilon_i| <\)
degeneracy_thresholdfor any occupied orbital i and virtual orbital a, the calculation logs a warning about potentially numerically unstable MP2 energy denominators but proceeds with the computation. (default=0.1)canonicality_tolerance – Maximum allowed absolute value of any off-diagonal element of the Fock matrix. Must be set according to SCF convergence thresholds. Default tolerance is set according to default SCF convergence. (default=1e-6)
verbose – Verbosity level for the underlying PySCF MP2 calculation. Higher values produce more output. (default=0)
- __init__(*, degeneracy_threshold: float = 0.1, canonicality_tolerance: float = 1e-06, verbose: int = 0) None
- Parameters:
degeneracy_threshold (float)
canonicality_tolerance (float)
verbose (int)
- Return type:
None
- canonicality_tolerance: float = 1e-06
- degeneracy_threshold: float = 0.1
- verbose: int = 0