Hi,
I think that, as you mention yourself at the end, at some point it
becomes a
question of choice. My choice, up to now, is to put all time dependent
data in
/observables except for the trajectory (that is, datasets that contain
one item
per particle) with the lengthily discussed issue of the box
specification. By
the way, I have not yet reviewed the latest commit that duplicates (If I
understood correclty) the box information which would lead to duplicate
data.
If "particles" is kept optional, this provides a good and interesting
flexibility
to /observables (even for future unknown yet cases). If not, it means
that I
have to select manually which time-dependent data goes where.
For an idea of "my side" of H5MD, you may want to have a look at my
Fortran
implementation. Basically, I have routines that handle all "parameters"
as
time-independent data and all "observables" as time-dependent data and
this is
very easy to use and manage.
http://homepages.ulb.ac.be/~pdebuyl/code/f90h5md.html
By this I do not mean in any way that we should do it the "f90h5md" way
else it
would not be very interesting as a collaborative project :-)
But I would like to point here that making "particles" mandatory kills
part of
what makes H5MD easy for me. It was indeed easier to write and generate
more
than 2500 lines of Fortran code than writing data manually. But H5MD
should
remain flexible with respect to the users (and developers, who are
indeed users
too).
Sorry for the long email "Pierre de Buyl" <address@hidden>for
so little, but I want H5MD to remain a comfort of
use and the solution I want to use for all my molecular data :-)
Cheers,
Pierre