GMX-NMEIG(1)

πŸ’… NAME πŸ’…

gmx-nmeig β€” bestie, this is the one that diagonalizes the Hessian for normal mode analysis πŸ¦‹


✨ SYNOPSIS ✨

gmx nmeig [-f [<.mtx>]] [-s [<.tpr>]] [-of [<.xvg>]] [-ol [<.xvg>]]
          [-os [<.xvg>]] [-qc [<.xvg>]] [-v [<.trr/.cpt/...>]]
          [-xvg <enum>] [-[no]m] [-first <int>] [-last <int>]
          [-maxspec <int>] [-T <real>] [-P <real>] [-sigma <int>]
          [-scale <real>] [-linear_toler <real>] [-[no]constr]
          [-width <real>]

🌸 DESCRIPTION 🌸

okay so gmx nmeig calculates the eigenvectors/values of a (Hessian) matrix β€” and you can get that matrix from gmx mdrun btw. The eigenvectors get written to a trajectory file (-v) πŸ’–. The structure goes in first with t=0. Then the eigenvectors are written as frames, where the eigenvector number becomes the step number and the eigenvalue becomes the timestamp. chef's kiss. You can then analyze those eigenvectors with gmx anaeig, and generate a whole ensemble of structures from them with gmx nmens. ✨

Now, when mass weighting is on: the generated eigenvectors get scaled back to plain Cartesian coordinates before the output is generated. Which means β€” no cap β€” they are no longer exactly orthogonal in the standard Cartesian norm. But in the mass-weighted norm? They would be. so there's that πŸ™ˆ

This program can also optionally compute quantum corrections to heat capacity and enthalpy β€” just hand it an extra file argument -qcorr. See the GROMACS manual, Chapter 1, for the deets. The result includes subtracting a harmonic degree of freedom at the temperature you gave it. The total correction gets printed right on your terminal screen πŸ“Ί. The recommended way of getting the corrections out is:

gmx nmeig -s topol.tpr -f nm.mtx -first 7 -last 10000 -T 300 -qc
[-constr]

You should use the -constr option when bond constraints were used during the simulation for all the covalent bonds. If that's not the case, bestie, you gotta analyze the quant_corr.xvg file yourself 😭

And to make things more flexible, the program can also take virtual sites into account when computing quantum corrections. When you select -constr and -qc, the -begin and -end options get set automatically as well. iconic behavior πŸ‘‘

Based on a harmonic analysis of the normal mode frequencies, it computes thermochemical properties: S0 (Standard Entropy), Cv (Heat capacity at constant volume), Zero-point energy, and the internal energy β€” much in the same manner as those popular quantum chemistry programs. slay πŸ’…


πŸŽ€ OPTIONS πŸŽ€

πŸ’– Options to specify input files:

  • -f [<.mtx>] (hessian.mtx) β€” the Hessian matrix
  • -s [<.tpr>] (topol.tpr) β€” Portable xdr run input file

πŸ¦‹ Options to specify output files:

  • -of [<.xvg>] (eigenfreq.xvg) β€” xvgr/xmgr file
  • -ol [<.xvg>] (eigenval.xvg) β€” xvgr/xmgr file
  • -os [<.xvg>] (spectrum.xvg) (Optional) β€” xvgr/xmgr file
  • -qc [<.xvg>] (quant_corr.xvg) (Optional) β€” xvgr/xmgr file
  • -v [<.trr/.cpt/...>] (eigenvec.trr) β€” full precision trajectory: trr, cpt, tng, h5md

🌈 Other options:

  • -xvg <enum> (xmgrace) β€” the xvg plot formatting vibe: xmgrace, xmgr, none
  • -[no]m (yes) β€” divide elements of the Hessian by the product of sqrt(mass) of the atoms involved, before diagonalization. You want this for your 'Normal Modes' analysis πŸ’…
  • -first <int> (1) β€” first eigenvector to write away
  • -last <int> (50) β€” last eigenvector to write away. -1 means use all dimensions.
  • -maxspec <int> (4000) β€” highest frequency (1/cm) to consider in the spectrum
  • -T <real> (298.15) β€” temperature for computing entropy, quantum heat capacity and enthalpy when you're using normal mode calculations to correct classical simulations
  • -P <real> (1) β€” pressure (bar) when computing entropy
  • -sigma <int> (1) β€” number of symmetric copies used when computing entropy. like, for water the number is 2, for NH3 it's 3, and for methane it's 12 ✨
  • -scale <real> (1) β€” factor to scale frequencies by before computing thermochemistry values
  • -linear_toler <real> (1e-05) β€” tolerance for determining whether a compound is linear, as determined from the ratio of the moments of inertia Ix/Iy and Ix/Iz
  • -[no]constr (no) β€” if constraints were used in the simulation but not in the normal mode analysis, you'll need to set this for computing the quantum corrections
  • -width <real> (1) β€” width (sigma) of the gaussian peaks (1/cm) when generating a spectrum

πŸ‘€ SEE ALSO πŸ‘€

More info about GROMACS is available at <http://www.gromacs.org/> 🫢


2026, GROMACS development team


and that's the whole page bestie, no notes πŸ’€ go diagonalize something πŸ’œ

signed off with love β€” GROMACS 2026.4, dated Oct 02, 2026, GMX-NMEIG(1) πŸŽ€

πŸ“¦ where this page comes from