#include #include #include #include void MaskBase_InitMask (CCTK_ARGUMENTS) { DECLARE_CCTK_ARGUMENTS; DECLARE_CCTK_PARAMETERS; #if 0 CCTK_INT symtable; CCTK_INT symmetry_handle[6]; CCTK_INT symmetry_zone_width[6]; #endif int imin[3], imax[3]; /* boundary extent */ int i, j, k; int d, f; int dd; #if 0 int istat; #endif /* Initialise the weight to 1 everywhere */ if (verbose) { CCTK_INFO ("Initialising to weight 1"); } for (k=0; k= 0) { /* If this processor has the outer boundary */ if (cctk_bbox[2*d+f]) { if (symmetry_zone_width[2*d+f] < 0 || symmetry_zone_width[2*d+f] > cctk_lsh[d]) { CCTK_WARN (0, "The symmetry table entry \"symmetry_zone_width\" contains illegal values"); } /* Calculate the extent of the boundary hyperslab */ for (dd=0; dd<3; ++dd) { imin[dd] = 0; imax[dd] = cctk_lsh[dd]; } if (f==0) { /* lower face */ imax[d] = imin[d] + symmetry_zone_width[2*d+f]; } else { /* upper face */ imin[d] = imax[d] - symmetry_zone_width[2*d+f]; } /* Loop over the boundary slab */ for (k=imin[2]; k