Skip to main content
← OpenMECP Documentation

Module lst

Module lst 

Source
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§

InterpolationMethod
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.