CDTK.Tools.NormalModeAnalysis module
- CDTK.Tools.NormalModeAnalysis.normal_modes_from_HessianCart(Hc, m, x0=None, proj=False, subgroups=None, **opts)[source]
Normal modes analysis from the Cartesian Hessian matrix
- Hc – Hessian matrix in Cartesian coordinates (in general non mass-weighted)
np.array, shape=(N,N) where N is the number of coordinates
- m – Mass of each coordinate, 3N array for molecules in 3D space
np.array, shape=(N,)
x0 – Reference geometry on which the Hessian was calculated [optional] proj – Requires x0. If True, the overall translation and rotation of the molecule, as
well as the rotation of any given >subgroups are projected out before normal mode analysis [optional]
- subgroups – Requires x0 and proj=True. May contain arrays of atomic indices that
each specify a rotating subgroup with respect to the atom index positions given in m. The rotation of this subgroup with the smallest moment of inertia is projected out before normal mode analysis [optional]
output:
omega – array with angular frequencies of each mode L – mass weighted normal modes (in columns)
- CDTK.Tools.NormalModeAnalysis.q_mw_to_x(m, L)[source]
Normal mode Mass weighted displacements to unweighted Cartesian
m – array with mass of each coordinate L – mass weighted normal modes
- Returns:
2D array with normalized Cartesian normal modes in _rows_ This array can now be used to perform displacements in the unweighted Cartesian space.