Skip to content

Commit b1470f8

Browse files
committed
Support non-Hilbert decomposition
See ramses-organisation/ramses#72.
1 parent f4b77f2 commit b1470f8

File tree

1 file changed

+9
-2
lines changed

1 file changed

+9
-2
lines changed

yt/frontends/ramses/data_structures.py

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -261,8 +261,15 @@ def _read_amr_header(self):
261261
else:
262262
self._ngridbound = np.zeros(hvals["nlevelmax"], dtype="int64")
263263
_free_mem = f.read_attrs((("free_mem", 5, "i"),))
264-
_ordering = f.read_vector("c")
265-
f.skip(4)
264+
ordering = f.read_vector("c")
265+
ordering = "".join(_.decode() for _ in ordering).strip()
266+
if ordering == "hilbert":
267+
Nskip = 1 # bound_key
268+
elif ordering == "bisection":
269+
Nskip = 5 # bisec_wall, bisec_next, bisec_indx, bisec_cpubox_min, bisec_cpubox_max
270+
else:
271+
raise RuntimeError(f"Unknown ordering {ordering!r} in AMR file")
272+
f.skip(Nskip + 3) # skip son, flag1, cpu_map
266273
# Now we're at the tree itself
267274
# Now we iterate over each level and each CPU.
268275
position = f.tell()

0 commit comments

Comments
 (0)