diff options
-rw-r--r-- | src/SetMask.c | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/src/SetMask.c b/src/SetMask.c index 41453f5..1f958e3 100644 --- a/src/SetMask.c +++ b/src/SetMask.c @@ -15,6 +15,20 @@ void SetMask_SphericalSurface (CCTK_ARGUMENTS) if (!mask) CCTK_WARN(0, "No such variable, or no storage enabled"); + /* Delete mask first! */ + #pragma omp parallel + { + LC_LOOP3(mask_zero, i,j,k, 0,0,0, + cctk_lsh[0], cctk_lsh[1], cctk_lsh[2], + cctk_lsh[0], cctk_lsh[1], cctk_lsh[2]) + { + CCTK_INT i3D = CCTK_GFINDEX3D(cctkGH, i, j, k); + mask[i3D] = HYDRO_EXCISION_NORMAL; + } + LC_ENDLOOP3(mask_zero); + } + + /* Now set excision! */ for (int smi = 0; smi < 10; smi++) { CCTK_INT sfi = sf_IdFromName(SetMask_SurfaceIndex[smi], SetMask_SurfaceName[smi]); @@ -35,10 +49,6 @@ void SetMask_SphericalSurface (CCTK_ARGUMENTS) { mask[i3D] = HYDRO_EXCISION_EXCISED; } - else// if (SetMask_ResetAll) - { - mask[i3D] = HYDRO_EXCISION_NORMAL; - } } LC_ENDLOOP3(setsurface); } |