qdk_chemistry.algorithms.geometry_optimization module

Public entry point for geometry optimizer algorithms.

class qdk_chemistry.algorithms.geometry_optimization.GeometryOptimizer

Bases: pybind11_object

Base class for geometry optimization algorithms.

Optimizers derive active-space electron counts for nuclear derivative calculations and return the optimized energy, optimized structure, optional Hessian, and optional wavefunction.

__init__(self: qdk_chemistry.algorithms.GeometryOptimizer) → None

Create a geometry optimizer.

aliases(self: qdk_chemistry.algorithms.GeometryOptimizer) → list[str]

Return all registered names for the algorithm.

hash(self: qdk_chemistry.algorithms.GeometryOptimizer, structure: qdk_chemistry.data.Structure, charge: SupportsInt | SupportsIndex, spin_multiplicity: SupportsInt | SupportsIndex, input: qdk_chemistry.data.Orbitals | qdk_chemistry.data.BasisSet | qdk_chemistry.data.Wavefunction | str, n_inactive_orbitals: SupportsInt | SupportsIndex = 0) → str

Compute a deterministic content hash for an optimization run.

name(self: qdk_chemistry.algorithms.GeometryOptimizer) → str

Return the implementation name.

run(self: qdk_chemistry.algorithms.GeometryOptimizer, structure: qdk_chemistry.data.Structure, charge: SupportsInt | SupportsIndex, spin_multiplicity: SupportsInt | SupportsIndex, input: qdk_chemistry.data.Orbitals | qdk_chemistry.data.BasisSet | qdk_chemistry.data.Wavefunction | str, n_inactive_orbitals: SupportsInt | SupportsIndex = 0) → tuple[float, qdk_chemistry.data.Structure, qdk_chemistry.data.NuclearHessian | None, qdk_chemistry.data.Wavefunction | None]

Optimize a molecular structure.

Parameters:
  • structure – Initial molecular structure to optimize.

  • charge – Total molecular charge.

  • spin_multiplicity – Spin multiplicity of the molecular system.

  • input – Basis name, basis set, orbitals, or wavefunction input.

  • n_inactive_orbitals – Number of doubly occupied orbitals excluded from the active space.

Returns:

(energy, structure, hessian, wavefunction).

Return type:

tuple

settings(self: qdk_chemistry.algorithms.GeometryOptimizer) → qdk_chemistry.data.Settings

Return the optimizer settings.

type_name(self: qdk_chemistry.algorithms.GeometryOptimizer) → str

Return the algorithm type name.

class qdk_chemistry.algorithms.geometry_optimization.GeometryOptimizerSettings

Bases: Settings

Settings shared by geometry optimization algorithms.

__init__(self: qdk_chemistry.algorithms.GeometryOptimizerSettings) → None

Create geometry optimizer settings with common defaults.