qrunch.chemistry.ground_state_problem.calculators.configuration_interaction_ground_state_problem_calculators

Ground state energy calculator using configuration interaction (CI).

Classes

ConfigurationInteractionGroundStateProblemCalculator

Class for performing full configuration interaction calculations.

ConfigurationInteractionGroundStateProblemCalculatorOptions

Options to use for full configuration interaction calculations.

class ConfigurationInteractionGroundStateProblemCalculator

Bases: object

Class for performing full configuration interaction calculations.

__init__(options: ConfigurationInteractionGroundStateProblemCalculatorOptions | None = None) None

Initialize an instance of ConfigurationInteractionGroundStateProblemCalculator.

Parameters:

options (ConfigurationInteractionGroundStateProblemCalculatorOptions | None) – Options to use for the calculation. None results in default options.

Return type:

None

calculate(ground_state_problem: RestrictedGroundStateProblem | UnrestrictedGroundStateProblem) GroundStateProblemCalculatorResult

Solve the full configuration interaction (FCI) calculation.

Note that the ground_state_problem may restrict the orbital space - in which case this is not a FCI calculation but a CASCI calculation. However, we consider this a FCI calculation in the provided orbital space, and in case of a restricted orbital space the inactive energy contribution associated with the active space is included in the energy_correction of the ground_state_problem.

The Hamiltonian for the ground state problem is assumed to be real.

Parameters:

ground_state_problem (RestrictedGroundStateProblem | UnrestrictedGroundStateProblem) – The Ground state problem to calculate energy for.

Return type:

GroundStateProblemCalculatorResult

class ConfigurationInteractionGroundStateProblemCalculatorOptions

Bases: DataclassPublicAPI

Options to use for full configuration interaction calculations.

All fields are immutable (frozen=True) so an instance can be safely reused.

Parameters:

tolerance – Convergence tolerance. (default=1e-12)

__init__(*, tolerance: float = 1e-12) None
Parameters:

tolerance (float)

Return type:

None

tolerance: float = 1e-12