[Carpet] CarpetIOHDF5 IOHDF5::out_dt semantics

Jonathan Thornburg jthorn at aei.mpg.de
Mon Mar 12 20:48:30 CET 2007


Hi, Thomas, greetings from Southampton,

I've just discovered that when using CarpetIOHDF5, IOHDF5::out_dt
has semantics which I find a bit peculiar.

I'm using the darcs development version of Carpet from 24.Dec.2006,
and CactusBase/IO* CVS-updated around the same time (the newest
file timestamps in CactusBase/IO* are 7.Dec.2006).

I started a run specifying
  ActiveThorns = "CarpetIOHDF5"
  IOHDF5::out_criterion = "time"
  IOHDF5::out_dt        = 10.0
This run went to cctk_iteration 6880 (cctk_time=215).  I wanted to get
to cctk_time=1000, so I restarted from the last checkpoint, which was 
at cctk_iteration 6400 (cctk_time=200).  To reduce disk space usage,
for the restart I specified
  ActiveThorns = "CarpetIOHDF5"
  IOHDF5::out_criterion = "time"
  IOHDF5::out_dt        = 50.0
I was expecting that the result would be HDF output every cctk_time=10
up to t=210, then at 250, 300, 350, ... thereafter.  But according to
hdf5toascii_slicer, the HDF5 files actually contain output at
0, 10, 20, 30, ..., 190, 200, 210, 260, 310, 360, 410, ... .

That is, the semantics of  IOHDF5::out_dt  aren't "output any time
cctk_time is an integral multiple of this time" but rather "output
this much time past the last output, whenever that might have been".

My first question is, is this as it should be?  (That is, is this
a "feature" of CarpetIOHDF5, or a bug?


Continuing along, my restart run went to cctk_iteration 25696
(cctk_time=803).  So, I restarted a 2nd time from a checkpoint done
at cctk_iteration  25600 (cctk_time=800).  What seems odd to me is
that, despite again specifying
  ActiveThorns = "CarpetIOHDF5"
  IOHDF5::out_criterion = "time"
  IOHDF5::out_dt        = 50.0
I did *not* get any output at t=800.

Given the actual semantics of  IOHDF5::out_dt, what would I need to
do to get HDF output at the time of a checkpoint?

ciao,

-- 
-- Jonathan Thornburg <jthorn at aei.mpg.de>      
   School of Mathematics, U of Southampton, England
   "Washing one's hands of the conflict between the powerful and the
    powerless means to side with the powerful, not to be neutral."
                                      -- quote by Freire / poster by Oxfam



More information about the developers mailing list