diff options
Diffstat (limited to 'Carpet')
-rw-r--r-- | Carpet/CarpetIOASCII/src/ioascii.cc | 32 | ||||
-rw-r--r-- | Carpet/CarpetIOHDF5/src/iohdf5.cc | 42 |
2 files changed, 57 insertions, 17 deletions
diff --git a/Carpet/CarpetIOASCII/src/ioascii.cc b/Carpet/CarpetIOASCII/src/ioascii.cc index 4189918aa..283abeab1 100644 --- a/Carpet/CarpetIOASCII/src/ioascii.cc +++ b/Carpet/CarpetIOASCII/src/ioascii.cc @@ -31,7 +31,7 @@ #include "ioascii.hh" extern "C" { - static const char* rcsid = "$Header: /home/eschnett/C/carpet/Carpet/Carpet/CarpetIOASCII/src/ioascii.cc,v 1.73 2004/06/14 06:58:51 schnetter Exp $"; + static const char* rcsid = "$Header: /home/eschnett/C/carpet/Carpet/Carpet/CarpetIOASCII/src/ioascii.cc,v 1.74 2004/06/14 09:34:10 tradke Exp $"; CCTK_FILEVERSION(Carpet_CarpetIOASCII_ioascii_cc); } @@ -160,7 +160,13 @@ namespace CarpetIOASCII { ::SetupGH (tFleshConfig* const fc, const int convLevel, cGH* const cgh) { DECLARE_CCTK_PARAMETERS; + const void *dummy; + dummy = &fc; + dummy = &convLevel; + dummy = &cgh; + dummy = &dummy; + // Truncate all files if this is not a restart do_truncate.resize(CCTK_NumVars(), true); @@ -734,13 +740,20 @@ namespace CarpetIOASCII { static int output_variables_iteration = -1; if (cctk_iteration > output_variables_iteration) { - output_variables_iteration = cctk_iteration; - output_variables.resize (CCTK_NumVars()); const char* const varlist = GetStringParameter("out%dD_vars"); - CCTK_TraverseString - (varlist, SetFlag, &output_variables, CCTK_GROUP_OR_VAR); + if (CCTK_TraverseString (varlist, SetFlag, &output_variables, + CCTK_GROUP_OR_VAR) < 0) + { + int abort_on_error = output_variables_iteration < 0 && + strict_io_parameter_check; + CCTK_VWarn (abort_on_error ? 0 : 1, __LINE__, __FILE__,CCTK_THORNSTRING, + "error while parsing parameter 'IOASCII::out%dD_vars'", + outdim); + } + + output_variables_iteration = cctk_iteration; } if (! output_variables.at(vindex)) return 0; @@ -869,10 +882,12 @@ namespace CarpetIOASCII { assert (mglevel!=-1 && reflevel!=-1 && Carpet::map!=-1); - const int npoints = cgh->cctk_gsh[dir-1]; const CCTK_REAL delta = cgh->cctk_delta_space[dir-1] / cgh->cctk_levfac[dir-1]; const CCTK_REAL lower = cgh->cctk_origin_space[dir-1]; +#if 0 + const int npoints = cgh->cctk_gsh[dir-1]; const CCTK_REAL upper = lower + (npoints-1) * delta; +#endif const CCTK_REAL rindex = (coord - lower) / delta; int cindex = (int)floor(rindex + 0.75); @@ -889,6 +904,10 @@ namespace CarpetIOASCII { } assert (cindex>=0 && cindex<npoints); +#else + const void *dummy; + dummy = &ifallback; + dummy = &dummy; #endif return cindex; @@ -951,6 +970,7 @@ namespace CarpetIOASCII { void SetFlag (int index, const char* optstring, void* arg) { + optstring = optstring; vector<bool>& flags = *(vector<bool>*)arg; flags.at(index) = true; } diff --git a/Carpet/CarpetIOHDF5/src/iohdf5.cc b/Carpet/CarpetIOHDF5/src/iohdf5.cc index c05f401ea..953daa644 100644 --- a/Carpet/CarpetIOHDF5/src/iohdf5.cc +++ b/Carpet/CarpetIOHDF5/src/iohdf5.cc @@ -17,7 +17,7 @@ #include "cctk_Parameters.h" extern "C" { - static const char* rcsid = "$Header: /home/eschnett/C/carpet/Carpet/Carpet/CarpetIOHDF5/src/iohdf5.cc,v 1.32 2004/06/04 10:17:56 bzink Exp $"; + static const char* rcsid = "$Header: /home/eschnett/C/carpet/Carpet/Carpet/CarpetIOHDF5/src/iohdf5.cc,v 1.33 2004/06/14 09:34:12 tradke Exp $"; CCTK_FILEVERSION(Carpet_CarpetIOHDF5_iohdf5_cc); } @@ -67,6 +67,17 @@ namespace CarpetIOHDF5 { CCTK_RegisterIOMethodTriggerOutput (IOMethod, TriggerOutput); + /* initial I/O parameter check */ + int numvars = CCTK_NumVars (); + vector<bool> flags(numvars); + + if (CCTK_TraverseString (out3D_vars, SetFlag, &flags,CCTK_GROUP_OR_VAR) < 0) + { + CCTK_VWarn (strict_io_parameter_check ? 0 : 1, + __LINE__, __FILE__, CCTK_THORNSTRING, + "error while parsing parameter 'IOHDF5::out3D_vars'"); + } + // Christian's Recovery routine if ( !(CCTK_Equals(recover,"no")) ) { @@ -102,6 +113,12 @@ namespace CarpetIOHDF5 { CarpetIOHDF5GH* myGH; + const void *dummy; + dummy = &fc; + dummy = &convLevel; + dummy = &cctkGH; + dummy = &dummy; + // Truncate all files if this is not a restart do_truncate.resize(CCTK_NumVars(), true); @@ -198,7 +215,6 @@ namespace CarpetIOHDF5 { assert (n0>=0 && n0<CCTK_NumVars()); const int var = n - n0; assert (var>=0 && var<CCTK_NumVars()); - const int tl = 0; // Check for storage if (! CCTK_QueryGroupStorageI(cctkGH, group)) { @@ -220,8 +236,7 @@ namespace CarpetIOHDF5 { default: assert (0); } - const int rl = grouptype==CCTK_GF ? reflevel : 0; - + /* get the default I/O request for this variable */ ioRequest* request = IOUtil_DefaultIORequest (cctkGH, n, 1); @@ -293,6 +308,10 @@ namespace CarpetIOHDF5 { DECLARE_CCTK_ARGUMENTS; DECLARE_CCTK_PARAMETERS; + const void *dummy; + dummy = &called_from_checkpoint; + dummy = &dummy; + herr_t herr=0; void * h5data=NULL; @@ -734,6 +753,10 @@ namespace CarpetIOHDF5 { DECLARE_CCTK_PARAMETERS; + const void *dummy; + dummy = &reader; + dummy = &dummy; + const int n = CCTK_VarIndex(varname); assert (n>=0 && n<CCTK_NumVars()); const int group = CCTK_GroupIndexFromVarI (n); @@ -753,7 +776,7 @@ namespace CarpetIOHDF5 { int recovery_rl = -1; int recovery_comp = -1; - void * h5data; + void * h5data = NULL; // Check for storage if (! CCTK_QueryGroupStorageI(cctkGH, group)) { @@ -781,7 +804,7 @@ namespace CarpetIOHDF5 { // get dataset dimensions const hid_t dataspace = H5Dget_space(dataset); assert (dataspace>=0); - hsize_t rank = H5Sget_simple_extent_ndims(dataspace); + int rank = (int) H5Sget_simple_extent_ndims(dataspace); vector<hsize_t> shape(rank); int rank2 = H5Sget_simple_extent_dims (dataspace, &shape[0], NULL); herr = H5Sclose(dataspace); @@ -983,7 +1006,6 @@ namespace CarpetIOHDF5 { assert (n0>=0 && n0<CCTK_NumVars()); const int var = n - n0; assert (var>=0 && var<CCTK_NumVars()); - const int tl = 0; herr_t herr = 1; int want_dataset = 0; @@ -993,8 +1015,6 @@ namespace CarpetIOHDF5 { char datasetname[1024]; - CCTK_REAL *h5data; - // Check for storage if (! CCTK_QueryGroupStorageI(cctkGH, group)) { CCTK_VWarn (1, __LINE__, __FILE__, CCTK_THORNSTRING, @@ -1018,8 +1038,6 @@ namespace CarpetIOHDF5 { hid_t reader = -1; - const int gpdim = CCTK_GroupDimI(group); - // Read the file only on the root processor if (CCTK_MyProc(cctkGH)==0) { @@ -1056,9 +1074,11 @@ namespace CarpetIOHDF5 { } +#if 0 int amr_level; int amr_origin[dim]; int amr_dims[dim]; +#endif if (CCTK_MyProc(cctkGH)==0) { |