summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnton Khirnov <anton@khirnov.net>2022-08-15 18:42:48 +0200
committerAnton Khirnov <anton@khirnov.net>2022-08-15 18:45:16 +0200
commit610911aaa220a5c3e080ec0d530cb49fdad403d2 (patch)
tree70dbe26e19b50df500ca956316d9311e6e50415d
parent04578ddf0c71fa8053ee2f10179ba2ca4007484b (diff)
datafile: do not assume first dataset stored is also earliest in time
-rw-r--r--datafile.py11
1 files changed, 4 insertions, 7 deletions
diff --git a/datafile.py b/datafile.py
index 5a09c4d..b7e437b 100644
--- a/datafile.py
+++ b/datafile.py
@@ -90,14 +90,15 @@ class _DataSet(object):
self.name = name
# detect the number of components
+ first_iter = self._df.itertimes[0][0][0]
try:
- self._slice_single_component(self._df._first_iter, 0)
+ self._slice_single_component(first_iter, 0)
self.nb_components = 1
except KeyError:
c = 0
while True:
try:
- self._slice_single_component(self._df._first_iter, 0, c)
+ self._slice_single_component(first_iter, 0, c)
c += 1
except KeyError:
break
@@ -107,7 +108,7 @@ class _DataSet(object):
self.rl = []
while True:
try:
- self._slice_single_component(self._df._first_iter, len(self.rl))
+ self._slice_single_component(first_iter, len(self.rl))
self.rl.append(_DataRefinementLevel(len(self.rl), self))
except KeyError:
break
@@ -194,8 +195,6 @@ class DataFile(object):
# time duration of one iteration
_dt_iter = None
- _first_iter = None
-
# number of iterations per coarsest-level time step
_stepsize_iter = None
@@ -206,8 +205,6 @@ class DataFile(object):
self.path = path
try:
for it in self._f.values():
- if self._first_iter is None and 'timestep' in it.attrs:
- self._first_iter = it.attrs['timestep']
if 'time' in it.attrs and it.attrs['time'] > 0.0:
self._dt_iter = it.attrs['time'] / it.attrs['timestep']
break