From d0735c187c48d07e6c6fa30194a7649c07b4a4a2 Mon Sep 17 00:00:00 2001 From: schnetter Date: Sat, 28 Oct 2006 17:53:09 +0000 Subject: Use information from ghost zones when applying the symmetry. This is necessary at edges and corners with mesh refinement boundaries. This in turn requires that grid functions be synchronised _before_ this symmetry is applied. git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/RotatingSymmetry180/trunk@39 20f44201-0f4f-0410-9130-e5fc2714a787 --- src/rotatingsymmetry180.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/rotatingsymmetry180.c b/src/rotatingsymmetry180.c index df0f0a9..dcfde4b 100644 --- a/src/rotatingsymmetry180.c +++ b/src/rotatingsymmetry180.c @@ -45,6 +45,7 @@ int BndRot180VI (cGH const * restrict const cctkGH, int offset[3]; /* offset 0..1 due to avoid_origin */ struct xferinfo * restrict xferinfo; + int options; int var; @@ -379,6 +380,7 @@ int BndRot180VI (cGH const * restrict const cctkGH, int imin[3], imax[3]; int i, j, k; for (d=0; d<3; ++d) { + assert (0); /* xferinfo has not yet been allocated */ imin[d] = xferinfo[d].dst.off; imax[d] = xferinfo[d].dst.off + xferinfo[d].dst.len; imin[d] -= cctk_lbnd[d]; @@ -451,11 +453,17 @@ int BndRot180VI (cGH const * restrict const cctkGH, xferinfo[ dir].flip = 1; xferinfo[otherdir].flip = 1; + options = Util_TableCreateFromString ("useghosts=1"); + assert (options>=0); + ierr = Slab_MultiTransfer - (cctkGH, group.dim, xferinfo, -1, + (cctkGH, group.dim, xferinfo, options, nvars, vartypes, varptrs, vartypes, varptrs); assert (!ierr); + ierr = Util_TableDestroy (options); + assert (!ierr); + if (poison_boundaries) { /* check destination grid points for poison */ if (cctkGH->cctk_bbox[2*dir]) { -- cgit v1.2.3