Vibrational Frequency Analysis
Vibrational frequency analysis is used to determine the normal modes and corresponding vibrational frequencies of a molecular system. This calculation is essential for identifying whether a stationary point is a minimum or a transition state, and for computing thermodynamic properties.
I. Mass-Weighting and Projection
1. Mass-Weighted Hessian Matrix
The vibrational frequencies are obtained from the second derivatives of the energy with respect to nuclear coordinates, which form the Hessian matrix. To decouple the motion of different atoms with varying masses, the Cartesian Hessian matrix \(\mathbf{H}\) is converted into the mass-weighted Hessian matrix \(\mathbf{H}^{\text{MW}}\) with elements defined by
where \(i\) and \(j\) represent atomic indices, \(\alpha\) and \(\beta\) represent Cartesian coordinate directions, and \(M_i\) and \(M_j\) represent the corresponding atomic masses.
2. Projection of Translations and Rotations
A free molecule has three translational and three rotational (two for linear molecules) degrees of freedom that have zero frequency. To prevent numerical mixing with the true vibrational modes, these degrees of freedom are projected out. An orthonormal projection matrix \(\mathbf{P}\) is constructed from center-of-mass and inertia tensor coordinates, and the projected mass-weighted Hessian is calculated as
which constrains translations and rotations to have zero-valued eigenvalues.
II. Normal Modes and Frequencies
3. Implementation Tricks and Projector Construction
To construct the translation-rotation projection matrix \(\mathbf{P}\), the codebase first computes the center of mass of the molecule and translates the coordinates. It then constructs the \(3\times3\) inertia tensor and diagonalizes it using a symmetric eigenvalue solver to obtain the principal moments of inertia and the corresponding principal axes vectors. The translational and rotational basis vectors are constructed in the mass-weighted Cartesian space and orthonormalized using a Gram–Schmidt procedure to build a transformation matrix \(\mathbf{U}_{\text{tr}}\). The projection matrix is then evaluated as
which is applied to the mass-weighted Hessian via matrix multiplication as \(\mathbf{H}^{\text{proj}}=\mathbf{P}\mathbf{H}^{\text{MW}}\mathbf{P}\), ensuring that translational and rotational contamination is projected out.
4. Normal Mode Diagonalization
The projected mass-weighted Hessian is diagonalized to obtain its eigenvalues \(\lambda_k\) and eigenvectors as
where \(\mathbf{Q}_k\) represents the normal mode coordinate vector for mode \(k\). The harmonic vibrational frequency \(\omega_k\) in atomic units is calculated from the eigenvalue as
where the sign function preserves negative eigenvalues as imaginary frequencies, representing transition states on the potential energy surface. The frequencies are then converted to wavenumbers in \(\text{cm}^{-1}\) using physical constants defined in the codebase for direct comparison with experimental spectra.