Skip to main content

Reaction Kinetics

Compute transition-state-theory rate constants from reactant conformer ensembles and transition-state conformers.

from atomiverse import ReactionKinetics
from atomiverse.levels import GFN2_XTB

job = ReactionKinetics(
reactants=[
[reactant_conf_1, reactant_conf_2], # one ensemble per reactant species
],
transition_states=[ts_conf_1, ts_conf_2],
charge=0,
multiplicity=1,
level_of_theory=GFN2_XTB,
temperature_start=280.0,
temperature_stop=340.0,
temperature_step=10.0,
)
job.submit()

result = job.require_result()
for point in result.kinetics:
print(point.temperature, point.rate_constant, point.rate_constant_unit)

Inputs

  • reactants: list of reactant ensembles. Each ensemble is a list of Atoms conformers for one reactant species. Bimolecular reactions use two ensembles.
  • transition_states: list of transition-state conformer Atoms.
  • charge, multiplicity: charge and spin multiplicity used for every structure.
  • level_of_theory: method used for single-point energies and Hessians.
  • temperature_start, temperature_stop, temperature_step: temperature grid in K.

Workflow

For each reactant and transition-state conformer, Atomiverse evaluates a single-point energy, vibrational analysis, and MSRRHO thermochemistry. The conformer free energies are combined with a Boltzmann ensemble sum, then an Eyring transition-state-theory rate constant is reported at each temperature.

Results

result.kinetics is a table with:

  • temperature
  • activation_gibbs_kj_per_mol
  • rate_constant
  • rate_constant_unit

result.steps contains per-conformer energy, frequencies, zero-point energy, and Gibbs free energies used to build the rate table.

Thresholds and checks

  • Temperature grids are limited to 2000 points.
  • Vibrational modes with magnitude below 50 cm⁻¹ are treated as external/soft modes by the vibrational workflow.
  • Transition-state conformers report the most negative retained frequency as imaginary_frequency_cm1; inspect this value to confirm the saddle point.
  • Very large ensembles increase the requested resource tier automatically.