diff options
author | schnetter <> | 2004-02-09 15:48:00 +0000 |
---|---|---|
committer | schnetter <> | 2004-02-09 15:48:00 +0000 |
commit | ac9827c09f3fae1457aac2f402d35f0ee7d85ede (patch) | |
tree | 554954ae5c665665a803262426a5796cbc009643 /Carpet/CarpetRegrid | |
parent | 25829b254dea6a7adfd1e3784c537692fccadc21 (diff) |
Report a warning instead of aborting when the RegridLevel function
Report a warning instead of aborting when the RegridLevel function
returns an illegal number of levels.
darcs-hash:20040209154843-07bb3-f92482392a8aa2b703a120e088a7b668cf08abae.gz
Diffstat (limited to 'Carpet/CarpetRegrid')
-rw-r--r-- | Carpet/CarpetRegrid/src/regrid.cc | 21 |
1 files changed, 13 insertions, 8 deletions
diff --git a/Carpet/CarpetRegrid/src/regrid.cc b/Carpet/CarpetRegrid/src/regrid.cc index 27cab87c4..37d6b466c 100644 --- a/Carpet/CarpetRegrid/src/regrid.cc +++ b/Carpet/CarpetRegrid/src/regrid.cc @@ -13,7 +13,7 @@ #include "regrid.hh" extern "C" { - static const char* rcsid = "$Header: /home/eschnett/C/carpet/Carpet/Carpet/CarpetRegrid/src/regrid.cc,v 1.36 2004/02/05 16:11:20 schnetter Exp $"; + static const char* rcsid = "$Header: /home/eschnett/C/carpet/Carpet/Carpet/CarpetRegrid/src/regrid.cc,v 1.37 2004/02/09 16:48:43 schnetter Exp $"; CCTK_FILEVERSION(Carpet_CarpetRegrid_regrid_cc); } @@ -110,13 +110,18 @@ namespace CarpetRegrid { } const int newnumlevels = RegridLevel (cctkGH, reflevel, refinement_levels, maxreflevels); - assert (newnumlevels>0 && newnumlevels<=maxreflevels); - - *const_cast<CCTK_INT*>(&refinement_levels) = newnumlevels; - ostringstream param; - param << refinement_levels; - CCTK_ParameterSet - ("refinement_levels", "CarpetRegrid", param.str().c_str()); + if (newnumlevels>0 && newnumlevels<=maxreflevels) { + + *const_cast<CCTK_INT*>(&refinement_levels) = newnumlevels; + ostringstream param; + param << refinement_levels; + CCTK_ParameterSet + ("refinement_levels", "CarpetRegrid", param.str().c_str()); + + } else { + CCTK_VWarn (1, __LINE__, __FILE__, CCTK_THORNSTRING, + "The aliased function \"RegridLevel\" returned an illegal number of refinement levels (%d). No levels will be activated or deactivated.", newnumlevels); + } } else { |