Output file precision setting

GROMACS version: 2020.6 double precision
GROMACS modification: No

Hi everyone,

It’s my first time using double precision GROMACS to conduct precise energy minimisations and subsequent normal mode analysis to validate force field parameters with experimental IR spectra, so please bear with me.

After running a CG minimisation to machine precision, mdrun told me the maximum force was in the order of e^-04 kJ/mol, which is fine. However, when running the subsequent step with integrator = nm, the prompt tells me that the maximum force is in the order of e^-02 kJ/mol! I thought this discrepancy was strange, so I inspected the default output .gro file I used to grompp -c the NMA step and noticed it only has 3 decimal places! I also noticed that there was no checkpoint file from the minimisation step despite specifying -cpo during the previous mdrun.

How can I control the precision of the output .gro file and/or ensure the minimisation produces a checkpoint file that I can -t in for the NMA step?

As a workaround, I attempted to convert the .trr file to a higher precision .gro file with -ndec, but -ndec had no effect on the resulting .gro file. The only thing that worked was to output from trjconv with -ndec 6 a .g96 file and manually copy the higher precision coordinates from that into the .gro file. I feel like I must be missing something obvious.

In any case, with the higher precision coordinates from the .g96 file I was finally able to diagonalise the Hessian. Does this look about right for a GROMACS nmeig-generated spectrum? I notice there’s a gradual increase in the magnitude of the peaks from 200 to 1700 cm-1:


Thank you for your time,