diff options
author | schnetter <> | 2003-07-16 19:45:00 +0000 |
---|---|---|
committer | schnetter <> | 2003-07-16 19:45:00 +0000 |
commit | fea7e058dce702dfa78aca7ef9f0b0533e246d59 (patch) | |
tree | 0a92ce11f618f3d39aae276720410d2a651309df /Carpet/CarpetLib/src | |
parent | 49c5a8ec0b5e69d9ad1df9c4bc05b8c4d056b7d8 (diff) |
Introduce a buffer zone between the prolongation destination and
Introduce a buffer zone between the prolongation destination and
restriction source grid points. Set its width to 2 by default. This
seems to be necessary for second order convergence.
darcs-hash:20030716194558-07bb3-d34ffc034cb54e4dcce2e2be2bd378184a79304e.gz
Diffstat (limited to 'Carpet/CarpetLib/src')
-rw-r--r-- | Carpet/CarpetLib/src/dh.cc | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/Carpet/CarpetLib/src/dh.cc b/Carpet/CarpetLib/src/dh.cc index c9c15e1da..b140d68b4 100644 --- a/Carpet/CarpetLib/src/dh.cc +++ b/Carpet/CarpetLib/src/dh.cc @@ -1,4 +1,4 @@ -// $Header: /home/eschnett/C/carpet/Carpet/Carpet/CarpetLib/src/dh.cc,v 1.36 2003/07/14 15:41:34 schnetter Exp $ +// $Header: /home/eschnett/C/carpet/Carpet/Carpet/CarpetLib/src/dh.cc,v 1.37 2003/07/16 21:45:58 schnetter Exp $ #include <assert.h> @@ -281,7 +281,9 @@ void dh<D>::recompose (const int initialise_upto) { boxes[rl ][c ][ml].recv_ref_fine [cc].push_back(recv); } #else - const ibbox recv = intrf.contracted_for(intr) & intr; + const ivect buf (buffer_width); + const ibbox recv = (intrf.contracted_for(intr).expand(-buf,-buf) + & intr); const ibbox send = recv.expanded_for(intrf); assert (send.empty() == recv.empty()); if (! send.empty()) { |