Expand description
Linear synchronous transit interpolation Linear Synchronous Transit (LST) interpolation module.
This module provides functionality for interpolating between molecular geometries using various methods including Linear Synchronous Transit (LST) and Quadratic Synchronous Transit (QST). These methods are commonly used in quantum chemistry to generate initial reaction paths and locate transition states.
§Overview
The LST method creates a series of intermediate geometries between two endpoint structures by linear interpolation in Cartesian coordinates. The QST method extends this to quadratic interpolation using three geometries (reactant, product, and an intermediate structure).
§Key Features
- Kabsch Algorithm: Optimal alignment of geometries before interpolation
- Multiple Methods: Linear, quadratic, and energy-weighted interpolation
- Validation: Comprehensive geometry validation and error checking
- Path Analysis: Path length calculation and geometry preview
§Examples
use omecp::lst::{interpolate, InterpolationMethod};
use omecp::geometry::Geometry;
// Create two geometries (example with water molecule)
let elements = vec!["O".to_string(), "H".to_string(), "H".to_string()];
let coords1 = vec![0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 1.0, 0.0];
let coords2 = vec![0.0, 0.0, 0.5, 1.2, 0.0, 0.5, 0.0, 1.2, 0.5];
let geom1 = Geometry::new(elements.clone(), coords1);
let geom2 = Geometry::new(elements, coords2);
// Generate 10 intermediate geometries using linear interpolation
let path = interpolate(&geom1, &geom2, 10, InterpolationMethod::Linear);§References
- Halgren, T. A.; Lipscomb, W. N. Chem. Phys. Lett. 1977, 49, 225-232.
- Kabsch, W. Acta Crystallogr. A 1976, 32, 922-923.
Enums§
- Interpolation
Method - Interpolation methods available for LST calculations.
Functions§
- calculate_
path_ length - Calculates the total path length along an interpolated reaction coordinate.
- create_
midpoint_ 🔒geometry - Creates a simple midpoint geometry for QST when only two geometries are provided.
- geometry_
to_ 🔒coords - Converts a geometry to a flat coordinate vector.
- interpolate
- Performs LST interpolation between two geometries using the specified method.
- interpolate_
linear - Performs Linear Synchronous Transit (LST) interpolation between two geometries.
- interpolate_
quadratic - Performs Quadratic Synchronous Transit (QST) interpolation using three geometries.
- print_
geometry_ preview - Prints a formatted preview of interpolated geometries for interactive confirmation.
- validate_
geometries - Validates that interpolated geometries are chemically and numerically reasonable.