Hi Felix,
On Mon, May 05, 2014 at 05:05:22PM +0200, Felix Höfling wrote:
I encountered an obstacle with the present specification of the "time"
dataset of generic H5MD elements. It says "The values of the dataset are
in monotonically increasing order."
In specific use cases, it happens that the positions/velocities are
modified without incrementing time. An example is rescaling of the
velocities at the end of a run to match a prescribed kinetic energy. In
the current H5MD spec it is not possible to store the data before and
after the rescaling as time does not progress. (The step may be
incremented by convention in such a case.)
I suggest to relax the condition on the "time" dataset to
"non-descreasing
order". This would not impair binary search strategies in the "time"
dataset. And time being a floating-point value should not be used to
uniquely identify a simulation step anyway.
The “time” dataset constraint has been mentioned before:
http://thread.gmane.org/gmane.science.simulation.h5md.user/422
I think it is good to have the implied uniqueness of the time values.
Could you provide insight why one stores the velocities both before
and after a rescaling? I consider the rescaling part of the MD step
and store the velocities after the rescaling.