EXESS Optimization

EXESS geometry optimization for the Rush Python client.

Submission

rush.exess.optimization(mol, max_iters, optimization_keywords=OptimizationKeywords(), method='RestrictedKSDFT', basis='cc-pVDZ', aux_basis=None, standard_orientation=None, force_cartesian_basis_sets=None, scf_keywords=None, ksdft_keywords=_KSDFTDefault.DEFAULT, qm_fragments=None, mm_fragments=None, system=None, run_spec=RunSpec(gpus=1), run_opts=RunOpts())[source]

Submit a geometry optimization for the topology at topology_path.

Returns a RushRun handle. Call .fetch() to get the parsed trajectory and optimization steps, or .save() to write them to disk.

Parameters:
Return type:

RushRun[OptimizationResultRef]

Input Types

class rush.exess.OptimizationKeywords(convergence_criteria: OptimizationConvergenceCriteria | None = None, optimizer_reset_interval: int | None = None, coordinate_system: CoordinateSystemT | None = None, constraints: list[list[int]] | None = None, hessian_guess: HessianGuessTypeT | None = None, algorithm: OptimizationAlgorithmTypeT | None = None, lbfgs_keywords: LBFGSKeywords | None = None, frozen_distance_slippage_tolerance_angstroms: float | None = None, frozen_angle_slippage_tolerance_degrees: float | None = None, trust_region_keywords: TrustRegionKeywords | None = None, fixed_atoms: list[int] | None = None, free_atoms: list[int] | None = None, fixed_fragments: list[int] | None = None, free_fragments: list[int] | None = None, fix_heavy: bool | None = None)[source]
Parameters:
  • convergence_criteria (OptimizationConvergenceCriteria | None)

  • optimizer_reset_interval (int | None)

  • coordinate_system (CoordinateSystemT | None)

  • constraints (list[list[int]] | None)

  • hessian_guess (HessianGuessTypeT | None)

  • algorithm (OptimizationAlgorithmTypeT | None)

  • lbfgs_keywords (LBFGSKeywords | None)

  • frozen_distance_slippage_tolerance_angstroms (float | None)

  • frozen_angle_slippage_tolerance_degrees (float | None)

  • trust_region_keywords (TrustRegionKeywords | None)

  • fixed_atoms (list[int] | None)

  • free_atoms (list[int] | None)

  • fixed_fragments (list[int] | None)

  • free_fragments (list[int] | None)

  • fix_heavy (bool | None)

algorithm: OptimizationAlgorithmTypeT | None = None
constraints: list[list[int]] | None = None
convergence_criteria: OptimizationConvergenceCriteria | None = None
coordinate_system: CoordinateSystemT | None = None
fix_heavy: bool | None = None
fixed_atoms: list[int] | None = None
fixed_fragments: list[int] | None = None
free_atoms: list[int] | None = None
free_fragments: list[int] | None = None
frozen_angle_slippage_tolerance_degrees: float | None = None
frozen_distance_slippage_tolerance_angstroms: float | None = None
hessian_guess: HessianGuessTypeT | None = None
lbfgs_keywords: LBFGSKeywords | None = None
optimizer_reset_interval: int | None = None
trust_region_keywords: TrustRegionKeywords | None = None
class rush.exess.OptimizationConvergenceCriteria(metric: str | None = None, gradient_threshold: float | None = None, delta_energy_threshold: float | None = None, step_component_threshold: float | None = None)[source]
Parameters:
  • metric (str | None)

  • gradient_threshold (float | None)

  • delta_energy_threshold (float | None)

  • step_component_threshold (float | None)

delta_energy_threshold: float | None = None
gradient_threshold: float | None = None
metric: str | None = None
step_component_threshold: float | None = None
class rush.exess.TrustRegionKeywords(initial_radius: float | None = None, max_radius: float | None = None, min_radius: float | None = None, increase_factor: float | None = None, decrease_factor: float | None = None, constrict_factor: float | None = None, increase_threshold: float | None = None, decrease_threshold: float | None = None, rejection_threshold: float | None = None)[source]
Parameters:
  • initial_radius (float | None)

  • max_radius (float | None)

  • min_radius (float | None)

  • increase_factor (float | None)

  • decrease_factor (float | None)

  • constrict_factor (float | None)

  • increase_threshold (float | None)

  • decrease_threshold (float | None)

  • rejection_threshold (float | None)

constrict_factor: float | None = None
decrease_factor: float | None = None
decrease_threshold: float | None = None
increase_factor: float | None = None
increase_threshold: float | None = None
initial_radius: float | None = None
max_radius: float | None = None
min_radius: float | None = None
rejection_threshold: float | None = None
class rush.exess.LBFGSKeywords(linesearch: LBFGSLinesearchT = 'BacktrackingStrongWolfe', n_corrections: int | None = None, epsilon: float | None = None, max_linesearch: int | None = None, gtol: float | None = None)[source]
Parameters:
  • linesearch (LBFGSLinesearchT)

  • n_corrections (int | None)

  • epsilon (float | None)

  • max_linesearch (int | None)

  • gtol (float | None)

epsilon: float | None = None
gtol: float | None = None
linesearch: LBFGSLinesearchT = 'BacktrackingStrongWolfe'
max_linesearch: int | None = None
n_corrections: int | None = None

Result Types

class rush.exess.OptimizationResult(trajectory: list[Topology], steps: list[OptimizationStep])[source]
Parameters:
steps: list[OptimizationStep]
trajectory: list[Topology]
class rush.exess.OptimizationResultPaths(trajectory: pathlib.Path, steps: pathlib.Path)[source]
Parameters:
  • trajectory (Path)

  • steps (Path)

steps: Path
trajectory: Path
class rush.exess.OptimizationResultRef(trajectory, steps)[source]

Lightweight reference to optimization outputs in the Rush object store.

Parameters:
classmethod from_raw_output(res)[source]

Parse raw collect_run output into an OptimizationResultRef.

Parameters:

res (Any)

Return type:

OptimizationResultRef

fetch()[source]

Download optimization outputs and parse into Python objects.

Return type:

OptimizationResult

save()[source]

Download optimization outputs and save to the workspace.

Return type:

OptimizationResultPaths

steps: RushObject
trajectory: RushObject
class rush.exess.OptimizationStep(total_energy: float, max_gradient_component: float)[source]
Parameters:
  • total_energy (float)

  • max_gradient_component (float)

max_gradient_component: float
total_energy: float