h5md-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [h5md-user] parameters group


From: Felix Höfling
Subject: Re: [h5md-user] parameters group
Date: Fri, 02 Sep 2011 14:53:35 +0200
User-agent: Opera Mail/11.50 (Linux)

Am 31.08.2011, 09:51 Uhr, schrieb Felix Höfling <address@hidden>:

Let me continue this discussion in a new thread.

There was the suggestion, to store box size and particle numbers as datasets in the /observables group, which I support. What about space dimension? Of course, it could be extracted from the dataset extents in observables/box. But this appears cumbersome to me. Why not storing it explicitly as attribute in the parameters group?

/parameters
  +-- dimension (or space_dimension)

Felix


The groups /observables and /trajectory are not mandatory, a valid H5MD
file may contain either of them or none (in favour of other groups not yet
specified). Since the box size and particle numbers are relevant for the
quantities in both groups, I suggest moving them to the parameters group.
This follows a suggestion by Konrad Hinsen. Further, as both quantities
may fluctuate during the course of the simulation, they should reflect the
structure of a time-dependent dataset (as in /trajectory or /observables).

/parameters
      \-- box
      |     \-- edge [variable][d][d]
      |     \-- offset [variable][d][d]
      |     \-- time [variable]
      |     \-- step [variable]
      \-- particle_number
      |     \-- species_A
      |     |      \-- sample [variable]
      |     |      \-- time [variable]
      |     |      \-- step [variable]
      |     \-- species_B
      |            \-- sample [variable]
      |            \-- time [variable]
      |            \-- step [variable]
      |
      +-- dimension

The dataset extents are denoted in brackets. The box is described by a
matrix with rows denoting the edge vectors and with an offset vector
denoting the corner with the minimal coordinates (lower, left corner in
2D). For non-cuboid boxes, e.g., truncated octahedral, we would need a
generalisation to this.

In a simulation with fixed box size or particle numbers, the datasets
contain a single entry only.

In order to simplify the implementation of reading and writing routines,
the box might be unified to the (sample, time, step) scheme. Further, the
particle number per species could be stored in a single vector rather than
a collection of datasets.

/parameters
      \-- box
      |     \-- edge
      |     |      \-- sample [variable][d][d]
      |     |      \-- time [variable]
      |     |      \-- step [variable]
      |     \-- offset
      |     |      \-- sample [variable][d]
      |     |      \-- time [variable]
      |     |      \-- step [variable]
      \-- particle_number
      |     \-- sample [variable][#species]
      |     \-- time [variable]
      |     \-- step [variable]
      +-- dimension

This brings back to me the question whether 'sample' should be replaced
more neutrally by 'value'.

Felix



reply via email to

[Prev in Thread] Current Thread [Next in Thread]