[ET Trac] [Einstein Toolkit] #1053: CarpetIOHDF5: it doesn't honor out3D_every parameter
Einstein Toolkit
trac-noreply at einsteintoolkit.org
Tue Aug 21 00:42:33 CDT 2012
#1053: CarpetIOHDF5: it doesn't honor out3D_every parameter
--------------------------------------+-------------------------------------
Reporter: bmundim | Owner: eschnett
Type: defect | Status: new
Priority: major | Milestone:
Component: Carpet | Version:
Keywords: CarpetIOHDF5 out3D_every |
--------------------------------------+-------------------------------------
Hi,
I have noticed a strange behaviour of CarpetIOHDF5 when running a bbh
simulation with Lovelace release: it doesn't seem to follow the parameter
out3D_every. I have attached a modified version of
CarpetWaveToyCheckpointTest.par that reproduces this error. I tried to
mimic a
bbh simulation setup I am using in terms of number of refinement levels
(it also helps to slow down the simulation a bit) and what I was
interested
to output. The experiment goes as follows:
1) create two directories, 000 and 001, where you can copy the attached
par
file to. Symlink a cactus executable for ET on each directory. Both
development
and lovelace releases will show this problem. You should have something
like this:
{{{
[bruno at frozenstar wavetoytest]$ ls 0*
000:
cactus_einstein@ CarpetWaveToyCheckpointTest.par
001:
cactus_einstein@ CarpetWaveToyCheckpointTest.par
}}}
2) Run the executable on both directories. First on 000 and then on 001.
{{{
./cactus_einstein CarpetWaveToyCheckpointTest.par
}}}
3) Analyze the results. Everything goes all right on the first directory,
000:
{{{
[bruno at frozenstar CarpetWaveToyCheckpointTest]$ h5ls
wavetoy::scalarevolve.xyz.h5
Parameters\ and\ Global\ Attributes Group
WAVETOY::phi\ it=0\ tl=0\ rl=0 Dataset {43, 43, 43}
WAVETOY::phi\ it=0\ tl=0\ rl=1 Dataset {41, 41, 41}
WAVETOY::phi\ it=0\ tl=0\ rl=2 Dataset {33, 33, 33}
WAVETOY::phi\ it=0\ tl=0\ rl=3 Dataset {33, 33, 33}
WAVETOY::phi\ it=0\ tl=0\ rl=4 Dataset {33, 33, 33}
WAVETOY::phi\ it=0\ tl=0\ rl=5 Dataset {33, 33, 33}
WAVETOY::phi\ it=0\ tl=0\ rl=6 Dataset {33, 33, 33}
WAVETOY::phi\ it=0\ tl=0\ rl=7 Dataset {33, 33, 33}
WAVETOY::phi\ it=0\ tl=0\ rl=8 Dataset {33, 33, 33}
WAVETOY::phi\ it=128\ tl=0\ rl=1 Dataset {41, 41, 41}
WAVETOY::phi\ it=128\ tl=0\ rl=2 Dataset {33, 33, 33}
WAVETOY::phi\ it=128\ tl=0\ rl=3 Dataset {33, 33, 33}
WAVETOY::phi\ it=128\ tl=0\ rl=4 Dataset {33, 33, 33}
WAVETOY::phi\ it=128\ tl=0\ rl=5 Dataset {33, 33, 33}
WAVETOY::phi\ it=128\ tl=0\ rl=6 Dataset {33, 33, 33}
WAVETOY::phi\ it=128\ tl=0\ rl=7 Dataset {33, 33, 33}
WAVETOY::phi\ it=128\ tl=0\ rl=8 Dataset {33, 33, 33}
WAVETOY::phi\ it=256\ tl=0\ rl=0 Dataset {43, 43, 43}
WAVETOY::phi\ it=256\ tl=0\ rl=1 Dataset {41, 41, 41}
WAVETOY::phi\ it=256\ tl=0\ rl=2 Dataset {33, 33, 33}
WAVETOY::phi\ it=256\ tl=0\ rl=3 Dataset {33, 33, 33}
WAVETOY::phi\ it=256\ tl=0\ rl=4 Dataset {33, 33, 33}
WAVETOY::phi\ it=256\ tl=0\ rl=5 Dataset {33, 33, 33}
WAVETOY::phi\ it=256\ tl=0\ rl=6 Dataset {33, 33, 33}
WAVETOY::phi\ it=256\ tl=0\ rl=7 Dataset {33, 33, 33}
WAVETOY::phi\ it=256\ tl=0\ rl=8 Dataset {33, 33, 33}
}}}
You can see above that all refinement levels were correctly output every
128
iterations as it was set on the par file. That doesn't happen anymore
after
recovery, ie on the second directory, 001:
{{{
[bruno at frozenstar CarpetWaveToyCheckpointTest]$ h5ls
wavetoy::scalarevolve.xyz.h5
Parameters\ and\ Global\ Attributes Group
WAVETOY::phi\ it=262\ tl=0\ rl=7 Dataset {33, 33, 33}
WAVETOY::phi\ it=262\ tl=0\ rl=8 Dataset {33, 33, 33}
WAVETOY::phi\ it=390\ tl=0\ rl=7 Dataset {33, 33, 33}
WAVETOY::phi\ it=390\ tl=0\ rl=8 Dataset {33, 33, 33}
}}}
neither 262 or 390 are multiples of 128! So something is going really
wrong
here. Note however that the respective 2D slice is correct:
{{{
[bruno at frozenstar CarpetWaveToyCheckpointTest]$ h5ls
wavetoy::scalarevolve.xy.h5
Parameters\ and\ Global\ Attributes Group
WAVETOY::phi\ it=384\ tl=0\ rl=1 Dataset {41, 41}
WAVETOY::phi\ it=384\ tl=0\ rl=2 Dataset {33, 33}
WAVETOY::phi\ it=384\ tl=0\ rl=3 Dataset {33, 33}
WAVETOY::phi\ it=384\ tl=0\ rl=4 Dataset {33, 33}
WAVETOY::phi\ it=384\ tl=0\ rl=5 Dataset {33, 33}
WAVETOY::phi\ it=384\ tl=0\ rl=6 Dataset {33, 33}
WAVETOY::phi\ it=384\ tl=0\ rl=7 Dataset {33, 33}
WAVETOY::phi\ it=384\ tl=0\ rl=8 Dataset {33, 33}
}}}
384 is a multiple of 128 and as you can see all active refinement levels
for
that iteration were written down.
Any idea on how to fix this?
Thanks!
--
Ticket URL: <https://trac.einsteintoolkit.org/ticket/1053>
Einstein Toolkit <http://einsteintoolkit.org>
The Einstein Toolkit
More information about the Trac
mailing list