From 56c106d5ddc2c62937a8e56cfccbdcc97ac100fb Mon Sep 17 00:00:00 2001 From: Erik Schnetter Date: Wed, 2 Dec 2009 14:43:06 -0800 Subject: CarpetIOHDF5: Allow different numbers of ghost zones on different levels Allow different numbers of ghost zones and different spatial prolongation orders on different refinement levels. This causes incompatible changes to the checkpoint file format. --- Carpet/CarpetIOHDF5/src/OutputSlice.cc | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'Carpet/CarpetIOHDF5/src/OutputSlice.cc') diff --git a/Carpet/CarpetIOHDF5/src/OutputSlice.cc b/Carpet/CarpetIOHDF5/src/OutputSlice.cc index b1698b2a1..712844b3e 100644 --- a/Carpet/CarpetIOHDF5/src/OutputSlice.cc +++ b/Carpet/CarpetIOHDF5/src/OutputSlice.cc @@ -39,7 +39,7 @@ namespace CarpetIOHDF5 { // routines which are independent of the output dimension static ibbox GetOutputBBox (const cGH* cctkGH, int group, - int m, int c, + int rl, int m, int c, const ibbox& ext); static void GetCoordinates (const cGH* cctkGH, int m, @@ -548,7 +548,7 @@ namespace CarpetIOHDF5 { if (dist::rank() == proc or dist::rank() == ioproc) { const ibbox& data_ext = dd->boxes.at(ml).at(rl).at(c).exterior; - const ibbox ext = GetOutputBBox (cctkGH, group, m, c, data_ext); + const ibbox ext = GetOutputBBox (cctkGH, group, rl, m, c, data_ext); CCTK_REAL coord_time; rvect coord_lower, coord_upper; @@ -950,7 +950,7 @@ namespace CarpetIOHDF5 { // Omit symmetry and ghost zones if requested ibbox GetOutputBBox (const cGH* const cctkGH, const int group, - const int m, const int c, + const int rl, const int m, const int c, const ibbox& ext) { DECLARE_CCTK_PARAMETERS; @@ -984,8 +984,8 @@ namespace CarpetIOHDF5 { ivect hi = ext.upper(); const ivect str = ext.stride(); - const b2vect obnds = vhh.at(m)->outer_boundaries(reflevel,c); - const i2vect ghost_width = arrdata.at(group).at(m).dd->ghost_width; + const b2vect obnds = vhh.at(m)->outer_boundaries(rl,c); + const i2vect ghost_width = arrdata.at(group).at(m).dd->ghost_widths.AT(rl); for (int d=0; d