diff options
author | schnetter <schnetter@20f44201-0f4f-0410-9130-e5fc2714a787> | 2006-10-28 17:53:09 +0000 |
---|---|---|
committer | schnetter <schnetter@20f44201-0f4f-0410-9130-e5fc2714a787> | 2006-10-28 17:53:09 +0000 |
commit | d0735c187c48d07e6c6fa30194a7649c07b4a4a2 (patch) | |
tree | 96501fd04bbca8426cf0f4e7b110b218240c7c98 | |
parent | 98f2a11583f4947f502776b371372c384c98aa02 (diff) |
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
-rw-r--r-- | src/rotatingsymmetry180.c | 10 |
1 files changed, 9 insertions, 1 deletions
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]) { |