From 437d09d01a5b3e2a32afe657ec4571cc784d00d4 Mon Sep 17 00:00:00 2001 From: Erik Schnetter Date: Mon, 19 Dec 2011 11:06:04 -0500 Subject: CarpetRegrid2: Warn user if level mask contains nans --- Carpet/CarpetRegrid2/schedule.ccl | 2 +- Carpet/CarpetRegrid2/src/amr.cc | 10 +++++++++- 2 files changed, 10 insertions(+), 2 deletions(-) (limited to 'Carpet/CarpetRegrid2') diff --git a/Carpet/CarpetRegrid2/schedule.ccl b/Carpet/CarpetRegrid2/schedule.ccl index f57946e1a..89c3a0663 100644 --- a/Carpet/CarpetRegrid2/schedule.ccl +++ b/Carpet/CarpetRegrid2/schedule.ccl @@ -3,7 +3,7 @@ STORAGE: last_iteration last_map STORAGE: active num_levels positions radii radiixyz STORAGE: old_active old_positions old_num_levels old_radiixyz -if (adaptive_mesh_refinement) +if (adaptive_refinement) { STORAGE: level_mask } diff --git a/Carpet/CarpetRegrid2/src/amr.cc b/Carpet/CarpetRegrid2/src/amr.cc index 572654f6d..6d23dd9c0 100644 --- a/Carpet/CarpetRegrid2/src/amr.cc +++ b/Carpet/CarpetRegrid2/src/amr.cc @@ -132,19 +132,27 @@ namespace CarpetRegrid2 { (bind+1) * block_size - block_offset - lbnd + overlap); bool refine = false; + bool have_nan = false; // Loop over all points in this block for (int k=bimin[2]; k= rl; + if (not isnan(level_mask[ind3d])) { + refine = refine or level_mask[ind3d] >= rl; + } else { + have_nan = true; + } } } } // Refine this block if any point in this block requires // refinement + if (have_nan) { + cout << " *** found nan in block " << bind << " ***\n"; + } if (refine) { if (veryverbose) { cout << " refining block " << bind << "\n"; -- cgit v1.2.3