qrunch.chemistry.ground_state_problem.builders.full_ground_state_problem_builders
Module containing builders for a full ground state problem.
Functions
Define the persistence checkpoints used during the process. |
Classes
Full ground state problem builder. |
|
Restricted full ground state problem builder. |
|
Unrestricted full ground state problem builder. |
- class FullGroundStateProblemBuilder
Bases:
GroundStateProblemBuilderFull ground state problem builder.
- __init__(*, verbose: bool = False, molecular_orbital_calculator: MolecularOrbitalCalculator | None = None, repulsion_integral_builder: TwoBodyElectronRepulsionIntegralBuilderProtocol | None = None, data_persister_manager: DataPersisterManager | None = None, problem_modifiers: list[GroundStateProblemModifier] | None = None) None
Initialize a full ground state problem builder.
This builder uses a general MolecularOrbitalCalculator to obtain the molecular orbitals required for defining the ground state problem.
The builder can build a restricted or unrestricted ground state problem.
The ground state problem is an object that contains all the information needed to solve the electronic structure problem for a given molecular configuration. This includes the molecular electronic integrals, the electron configuration, and any additional energy contributions (e.g., nuclear repulsion energy).
- Parameters:
verbose (bool) – If True, enables verbose output for the calculation process.
molecular_orbital_calculator (MolecularOrbitalCalculator | None) – Solver used to find orbitals for the system. HartreeFockCalculator is used as default.
repulsion_integral_builder (TwoBodyElectronRepulsionIntegralBuilderProtocol | None) – The object that can build two electron repulsion integrals. UnrestrictedTwoBodyElectronRepulsionIntegralBuilder is used as default.
data_persister_manager (DataPersisterManager | None) – Manager to handle saving and loading heavy full system calculations.
problem_modifiers (list[GroundStateProblemModifier] | None) – A list of problem modifiers
- Return type:
None
- build_restricted(molecular_configuration: MolecularConfiguration) RestrictedGroundStateProblem
Build restricted full ground state problem containing all atomic orbitals.
This method uses the restricted formalism which assumes that the alpha and beta spin components are identical, simplifying the electronic structure problem. This is suitable for systems where the electron spins are paired, such as closed-shell molecules.
- Parameters:
molecular_configuration (MolecularConfiguration) – The molecular configuration to calculate the integrals from.
- Return type:
- build_unrestricted(molecular_configuration: MolecularConfiguration) UnrestrictedGroundStateProblem
Build unrestricted full ground state problem containing all atomic orbitals.
This method uses the unrestricted formalism, where the alpha and beta spin components are treated independently, leading to a more flexible (but computationally more demanding) calculation. This flexibility allows the problem to describe systems with unpaired electrons (e.g., radicals) more accurately.
- Parameters:
molecular_configuration (MolecularConfiguration) – The molecular configuration to calculate the integrals from.
- Return type:
- data_persister_manager() DataPersisterManager | None
Return the data persister manager.
- Return type:
DataPersisterManager | None
- classmethod persistence_checkpoints() list[str]
Define the persistence checkpoints used during the embedding process.
These checkpoints specify computational stages where intermediate results can be saved and loaded to optimize computations and ensure reproducibility.
- Return type:
list[str]
- class FullRestrictedGroundStateProblemBuilder
Bases:
objectRestricted full ground state problem builder.
- __init__(*, verbose: bool = False, molecular_orbital_calculator: MolecularOrbitalCalculator | None = None, repulsion_integral_builder: TwoBodyElectronRepulsionIntegralBuilderProtocol | None = None, data_persister_manager: DataPersisterManager | None = None, problem_modifiers: list[GroundStateProblemModifier] | None = None) None
Initialize a restricted full ground state problem builder.
This builder uses a general MolecularOrbitalCalculator to obtain the molecular orbitals required for defining the ground state problem. The restricted formalism assumes that the alpha and beta spin components are identical, simplifying the electronic structure problem.
- Parameters:
verbose (bool) – If True, enables verbose output for the calculation process.
molecular_orbital_calculator (MolecularOrbitalCalculator | None) – Solver used to find molecular orbitals for the system. HartreeFockCalculator is used as default.
repulsion_integral_builder (TwoBodyElectronRepulsionIntegralBuilderProtocol | None) – The object that can build two electron repulsion integrals.
default. (TwoBodyElectronRepulsionIntegralBuilder is used as)
data_persister_manager (DataPersisterManager | None) – Manager to handle saving and loading heavy full system calculations.
problem_modifiers (list[GroundStateProblemModifier] | None) – A list of problem modifiers
- Return type:
None
- build(molecular_configuration: MolecularConfiguration) RestrictedGroundStateProblem
Build full ground state problem containing all atomic orbitals.
- Parameters:
molecular_configuration (MolecularConfiguration) – The molecular configuration to calculate the integrals from.
- Return type:
- data_persister_manager() DataPersisterManager | None
Return the data persister manager.
- Return type:
DataPersisterManager | None
- classmethod persistence_checkpoints() list[str]
Define the persistence checkpoints used during the process.
These checkpoints specify computational stages where intermediate results can be saved and loaded to optimize computations and ensure reproducibility.
- Return type:
list[str]
- class FullUnrestrictedGroundStateProblemBuilder
Bases:
objectUnrestricted full ground state problem builder.
- __init__(*, verbose: bool = False, molecular_orbital_calculator: MolecularOrbitalCalculator | None = None, repulsion_integral_builder: TwoBodyElectronRepulsionIntegralBuilderProtocol | None = None, data_persister_manager: DataPersisterManager | None = None, problem_modifiers: list[GroundStateProblemModifier] | None = None) None
Initialize an unrestricted full ground state problem builder.
This builder uses a general MolecularOrbitalCalculator to obtain the molecular orbitals required for defining the ground state problem. In the unrestricted formalism, the alpha and beta spin components are treated independently, leading to a more flexible (but computationally more demanding) calculation. This flexibility allows the problem to describe systems with unpaired electrons (e.g., radicals) more accurately.
- Parameters:
verbose (bool) – If True, enables verbose output for the calculation process.
molecular_orbital_calculator (MolecularOrbitalCalculator | None) – Solver used to find orbitals for the system. HartreeFockCalculator is used as default.
repulsion_integral_builder (TwoBodyElectronRepulsionIntegralBuilderProtocol | None) – The object that can build two electron repulsion integrals. UnrestrictedTwoBodyElectronRepulsionIntegralBuilder is used as default.
data_persister_manager (DataPersisterManager | None) – Manager to handle saving and loading heavy full system calculations.
problem_modifiers (list[GroundStateProblemModifier] | None) – A list of problem modifiers
- Return type:
None
- build(molecular_configuration: MolecularConfiguration) UnrestrictedGroundStateProblem
Build full ground state problem containing all atomic orbitals.
- Parameters:
molecular_configuration (MolecularConfiguration) – The molecular configuration to calculate the integrals from.
- Return type:
- data_persister_manager() DataPersisterManager | None
Return the data persister manager.
- Return type:
DataPersisterManager | None
- classmethod persistence_checkpoints() list[str]
Define the persistence checkpoints used during the embedding process.
These checkpoints specify computational stages where intermediate results can be saved and loaded to optimize computations and ensure reproducibility.
- Return type:
list[str]
- persistence_checkpoints() list[str]
Define the persistence checkpoints used during the process.
These checkpoints specify computational stages where intermediate results can be saved and loaded to optimize computations and ensure reproducibility.
- Return type:
list[str]