Saving data with uneven step size in pullf.xvg file.
I performed MD simulation with pull code.
1. First, a input .tpr file was made from .gro , .top, .mdp and .ndx files.
(grompp -f H1T3.mdp -p H1T3.top -c cin*.gro -n index.ndx -o H1T3.tpr)
(I attached these files blow.)
2. And then, MD simulation was performed for 100ns with 0.025ps of step size.
(mdrun -v -s H1T3.tpr -o H1T3.trr -x H1T3.xtc)
I saved the force in pullf.xvg file every single time step.
("pull_nstfout = 1" in H1T3.mdp file.)
However, the force was saved with uneven step size. The saved step size is bigger or smaller than 0.025ps and the err increased as simulation going forward. ( In other words, the err was relatively small in the first part of simulation, but it became pretty large in the last part of simulation.)
I have tried to change the "pull_nstfout" value from 1 to 20 and realize that if the saved step size is 5, 10, 15 or 20, the force is saved with even step size in pullf.xvg file. But, for the case of any other value, it is saved with uneven step size.
#7 Updated by Berk Hess almost 11 years ago
When does the step size start deviating, and by how much?
I ran the simulation for a minute and everything looks fine.
Could it be that you are seeing numerical rounding errors,
because the time is stored as a float, which has quite limited
precision for long simulation times?
#8 Updated by Yong Nam almost 11 years ago
The step size starts deviating around 8ps. (Since I set the single step size as 0.025ps, 8ps corresponds with 320 simulation steps.)
The degree of deviation is pretty small at its starting point, so it might be treated as a numerical rounding errors.
However, the values of saved step size deviation becomes over 0.007ps after passing approximately 130ns(5200000 simulation steps).
I cannot treat this deviation as rounding errors because it is relatively large comparing with the single step size(0.025ps).
#9 Updated by Berk Hess almost 11 years ago
These are indeed numerical rounding errors due to the float precision.
The same problem is present in the trajectory and energy files.
For the pull output files I can fix this by determining the time
with more accuracy.
But I guess that in most cases you are not really interested
in the exact times, so you can just ignore the deviations.
#11 Updated by Yong Nam almost 11 years ago
I am not sure if the variations of the output time-step can be explained by the
numerical error. Consider for example, the attached file 'pullf_tail.xvg' file
containing information for the last 10 time-steps of my simulations. Although at the beginning of the simulation the time step is fixed at 0.025, towards the end it oscillated between dt1 = 0.03125 and dt2 = 0.015625. The large fluctuation magnitude within one step size and the fact that dt1 = dt1*2 suggest that something other than the round-off error is involved.
I am computing autocorrelation function of the force and I would like to make sure
that the output time-steps are consistent.