aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorschnetter <schnetter@1bf05452-ddb3-4880-bfa1-00436340132b>2003-06-17 13:58:48 +0000
committerschnetter <schnetter@1bf05452-ddb3-4880-bfa1-00436340132b>2003-06-17 13:58:48 +0000
commit91212f4635d0bd3e95edce0b873b0a714f105943 (patch)
treea3e610a261de5f978074f0dc196967724be245c8
parentbb3b2eda789563a3c70af85e94ffc28953da480f (diff)
Fix a few bugs.
git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/Periodic/trunk@8 1bf05452-ddb3-4880-bfa1-00436340132b
-rw-r--r--src/periodic.c15
1 files changed, 12 insertions, 3 deletions
diff --git a/src/periodic.c b/src/periodic.c
index b114919..38ed889 100644
--- a/src/periodic.c
+++ b/src/periodic.c
@@ -136,7 +136,7 @@ BndPeriodicVI (cGH const * restrict const cctkGH,
int source;
assert (domain_size > 0);
- if (f==0 && domain_size < step_size) {
+ if (domain_size < step_size) {
/* TODO: this could be made more efficient by taking
larger steps */
step_size = 1;
@@ -163,10 +163,20 @@ BndPeriodicVI (cGH const * restrict const cctkGH,
#endif
} else {
/* Fill in upper face */
+#if 0
xferinfo[dir].src.off = stencil[dir];
xferinfo[dir].src.len = stencil[dir];
xferinfo[dir].dst.off = data.gsh[dir] - stencil[dir];
xferinfo[dir].dst.len = stencil[dir];
+#else
+ source = stencil[dir] + step*step_size;
+ while (source + step_size > data.gsh[dir] - stencil[dir]) source -= domain_size;
+ assert (source >= stencil[dir]);
+ xferinfo[dir].src.off = source;
+ xferinfo[dir].src.len = step_size;
+ xferinfo[dir].dst.off = data.gsh[dir] - stencil[dir] + step*step_size;
+ xferinfo[dir].dst.len = step_size;
+#endif
}
ierr = Slab_Transfer
@@ -212,7 +222,7 @@ BndPeriodicGI (cGH const * restrict const cctkGH,
int vi;
int ierr;
assert (gi>=0 && gi<CCTK_NumGroups());
- nv = CCTK_NumVarsInGroup(gi);
+ nv = CCTK_NumVarsInGroupI(gi);
assert (nv>=0);
if (nv>0) {
v1 = CCTK_FirstVarIndexI(gi);
@@ -251,7 +261,6 @@ Periodic_ApplyBC (cGH const * restrict const cctkGH)
int dim;
int * restrict stencil;
int i;
- int d;
int ierr;
assert (cctkGH);