You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: STANDARD.md
+15-2Lines changed: 15 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -216,7 +216,7 @@ Each file's *root* group (path `/`) must further define the attributes:
216
216
- allowed values:
217
217
-`fileBased` (multiple files)
218
218
-`groupBased` (one file)
219
-
-`stepBased` (one file with internally encoding, if supported by the data format)
219
+
-`stepBased` (one file with internal encoding for iterations, if supported by the data format)
220
220
221
221
-`iterationFormat`
222
222
- type: *(string)*
@@ -227,13 +227,26 @@ Each file's *root* group (path `/`) must further define the attributes:
227
227
for `fileBased` formats the iteration must be included
228
228
in the file name;
229
229
the format depends on the selected `iterationEncoding` method
230
+
- note: it is not required that every openPMD iteration contains an update for each declared openPMD record (see below)
230
231
- examples:
231
232
- for `fileBased`:
232
233
-`filename_%T.h5` (without file system directories)
233
234
- for `groupBased`: (fixed value)
234
235
-`/data/%T/` (must be equal to and encoded in the `basePath`)
235
236
- for `stepBased`: (fixed value)
236
-
-`slowest varying index`
237
+
- data-format internal convention
238
+
-*slowest varying index* of data
239
+
240
+
### `stepBased` Encoding of Iterations
241
+
242
+
In order to correlate openPMD iterations with an index of data-format internal updates/steps or an index in the slowest varying dimension of an array, the *root* group (path `/`) must contain an additional variable once `stepBased` is chosen for `iterationEncoding`:
243
+
244
+
-`snapshot`
245
+
- type: 1-dimensional array containing N *(int)* elements, where N is the number of updates/steps in the data format
246
+
- description: for each update/step in a data format, this variable needs to be updated with the corresponding openPMD iteration.
247
+
- note: in some data formats, updates/steps are absolute and not every update/step contains an update for each declared openPMD record
248
+
- advice to implementers: an openPMD iteration might be spread over multiple updates/steps, but not vice versa.
249
+
In such a scenario, an individual openPMD record's update/step must appear exactly once per iteration.
0 commit comments