Mismatch Between Pull-Distance reported while TPR Generation and gmx distance Calculation

GROMACS version: 2024.3
GROMACS modification: Yes

Hello GROMACS users,

I am facing an issue where the pull-distance between atom pairs reported during .tpr generation does not match the distance obtained using gmx distance after the simulation. Below is a detailed description of my workflow and observations.

Simulation Setup:

  • I am performing a potential of mean force (PMF) calculation using umbrella sampling.
  • The pulling coordinate is along the Z-axis.

Commands Used:

Step 1: Generating TPR Files

gmx grompp -f md_traj_umbrella_2021_dib.mdp -c Run_PMF_25.5.gro -r Run_PMF_25.5.gro -n index.ndx -p test_topol_PMF.top -o test

.
.
.
Pull group natoms pbc atom distance at start reference at t=0
1 2000 2998
2 7 6277 0.936 nm 0.936 nm
.
.
.
Note: pull group 1 is only the O of 2000 water molecules (atomnr 1-6000) and group2 is the last residue out of 40 each containing of 7 atoms (atomnr 6001 to 6280).

Step 2: Checking the Distance Using gmx distance

gmx distance -f Run_PMF_25.5.gro -s Run_PMF_25.5.gro -n index.ndx -select 'atomnr 2998 6277'

atomnr 2998 6277:
Number of samples: 1
Average distance: 4.63240 nm
Standard deviation: 0.00000 nm

I also tried
gmx distance -f Run_PMF_25.5.gro -s Run_PMF_25.5.gro -n index.ndx -select 'com of group "group2" plus com of group "group1"'

com of group “group2” plus com of group “group1”:
Number of samples: 1
Average distance: 2.48442 nm
Standard deviation: 0.00000 nm

Observations:

Here is the pull settings from mdp file
; Pull code
pull = yes
pull_ngroups = 2
pull_ncoords = 1
pull_group1_name = group1
pull_group2_name = group1
pull_coord1_type = umbrella
pull_coord1_geometry = distance
pull_coord1_groups = 1 2
pull_coord1_dim = N N Y
pull_coord1_rate = 0.0
pull_coord1_k = 1000
pull_coord1_start = yes
pull-pbc-ref-prev-step-com =yes

After the wham analyses also the histo.xvg shows maxima at 0.936 nm as reported while tpr generation, instead of expected 2.5nm.

Questions:

Why does the pull-distance recorded in .tpr differ from gmx distance calculations? Where am I making mistake?

Any insights or suggestions would be highly appreciated!

Thanks in advance!

Finally understood the reason behind the mismatch in pull-group distance values,

gmx distance is being calculated by sqrt[ (x1-x2)^2 + (Y1-Y2)^2 + (Z1-Z2)^2]

However, the pull-group distance is calculated based on pull_coord1_dim in MDP file settings

For, pull_coord1_dim = N N Y → distance=sqrt[ (Z1-Z2)^2]
For, pull_coord1_dim = N Y Y → distance=sqrt[ (Y1-Y2)^2 +(Z1-Z2)^2]
For, pull_coord1_dim = Y Y Y → distance=sqrt[ (x1-x2)^2 + (Y1-Y2)^2 +(Z1-Z2)^2]

Not deleting the original post as someone may later find it useful!