From e38b028ea97defd8d478e90c6e325573b3326faf Mon Sep 17 00:00:00 2001 From: roland haas Date: Tue, 7 Feb 2012 00:27:36 -0800 Subject: CarpetIOHDF5: let the hdf5_slicer write out a cctk_nghostzones attribute which is used by VisIt --- Carpet/CarpetIOHDF5/src/util/hdf5_slicer.cc | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) (limited to 'Carpet/CarpetIOHDF5') diff --git a/Carpet/CarpetIOHDF5/src/util/hdf5_slicer.cc b/Carpet/CarpetIOHDF5/src/util/hdf5_slicer.cc index 52f78d71e..5255bfb4f 100644 --- a/Carpet/CarpetIOHDF5/src/util/hdf5_slicer.cc +++ b/Carpet/CarpetIOHDF5/src/util/hdf5_slicer.cc @@ -335,7 +335,7 @@ static herr_t ProcessDataset (hid_t group, const char *datasetname, void *_file) int ndims; ndims = H5Sget_simple_extent_ndims (dataspace); hsize_t dims[3]; - int iorigin[3]; + int iorigin[3], cctk_nghostzones[3]; double origin[3], delta[3]; int itimestep = 0, level = 0; @@ -377,6 +377,9 @@ static herr_t ProcessDataset (hid_t group, const char *datasetname, void *_file) CHECK_HDF5 (attr = H5Aopen_name (dataset, "level")); CHECK_HDF5 (H5Aread (attr, H5T_NATIVE_INT, &level)); CHECK_HDF5 (H5Aclose (attr)); + CHECK_HDF5 (attr = H5Aopen_name (dataset, "cctk_nghostzones")); + CHECK_HDF5 (H5Aread (attr, H5T_NATIVE_INT, cctk_nghostzones)); + CHECK_HDF5 (H5Aclose (attr)); CHECK_HDF5 (H5Sget_simple_extent_dims (dataspace, dims, NULL)); int i; @@ -414,7 +417,7 @@ static herr_t ProcessDataset (hid_t group, const char *datasetname, void *_file) hsize_t slabcount[3] = {dims[0], dims[1], dims[2]}; hsize_t outslabcount[3]; double slice_origin[3], slice_delta[3]; - int slice_iorigin[3]; + int slice_iorigin[3], slice_cctk_nghostzones[3]; int j = 0; for (int i = 0; i < 3; i++) { if (slab_coord[i] != PARAMETER_UNSET) { @@ -425,6 +428,7 @@ static herr_t ProcessDataset (hid_t group, const char *datasetname, void *_file) slice_origin[j] = origin[i]; slice_delta[j] = delta[i]; slice_iorigin[j] = iorigin[i]; + slice_cctk_nghostzones[j] = cctk_nghostzones[i]; j++; } } @@ -482,6 +486,10 @@ static herr_t ProcessDataset (hid_t group, const char *datasetname, void *_file) dataspace, H5P_DEFAULT)); CHECK_HDF5 (H5Awrite (attr, H5T_NATIVE_INT, slice_iorigin)); CHECK_HDF5 (H5Aclose (attr)); + CHECK_HDF5 (attr = H5Acreate (dataset, "cctk_nghostzones", H5T_NATIVE_INT, + dataspace, H5P_DEFAULT)); + CHECK_HDF5 (H5Awrite (attr, H5T_NATIVE_INT, slice_cctk_nghostzones)); + CHECK_HDF5 (H5Aclose (attr)); CHECK_HDF5 (H5Sclose (dataspace)); CHECK_HDF5 (dataspace = H5Screate (H5S_SCALAR)); CHECK_HDF5 (attr = H5Acreate (dataset, "time", H5T_NATIVE_DOUBLE, -- cgit v1.2.3