aboutsummaryrefslogtreecommitdiff
path: root/Carpet/Carpet/src/Recompose.cc
diff options
context:
space:
mode:
authorErik Schnetter <schnetter@cct.lsu.edu>2009-11-10 14:51:43 -0600
committerBarry Wardell <barry.wardell@gmail.com>2011-12-14 16:45:14 +0000
commit702a60056d9913ebfa93119c6c29c11b868d003c (patch)
tree7de0b949000726d4f2205ee495211ff8aee48291 /Carpet/Carpet/src/Recompose.cc
parent61b583ab168d6fd425076ccf05a53ad8312e53ed (diff)
Carpet: Allow multi-patch systems when outputting grid structure
Allow multi-patch systems when outputting the grid structure to file.
Diffstat (limited to 'Carpet/Carpet/src/Recompose.cc')
-rw-r--r--Carpet/Carpet/src/Recompose.cc47
1 files changed, 34 insertions, 13 deletions
diff --git a/Carpet/Carpet/src/Recompose.cc b/Carpet/Carpet/src/Recompose.cc
index 65485d61d..833c87f3c 100644
--- a/Carpet/Carpet/src/Recompose.cc
+++ b/Carpet/Carpet/src/Recompose.cc
@@ -781,28 +781,49 @@ namespace Carpet {
#warning "TODO: check this (for Carpet, and maybe also for CartGrid3D)"
#warning "TODO: (the check that these two are consistent should be in Carpet)"
- typedef vect<vect<CCTK_INT,2>,3> jjvect;
jjvect nboundaryzones;
jjvect is_internal;
jjvect is_staggered;
jjvect shiftout;
- check (not GetBoundarySpecification
- (2*dim,
- & nboundaryzones[0][0],
- & is_internal[0][0],
- & is_staggered[0][0],
- & shiftout[0][0]));
+ if (domain_from_multipatch and
+ CCTK_IsFunctionAliased ("MultiPatch_GetBoundarySpecification"))
+ {
+ check (not MultiPatch_GetBoundarySpecification
+ (m, 2*dim,
+ & nboundaryzones[0][0],
+ & is_internal[0][0],
+ & is_staggered[0][0],
+ & shiftout[0][0]));
+ } else {
+ check (not GetBoundarySpecification
+ (2*dim,
+ & nboundaryzones[0][0],
+ & is_internal[0][0],
+ & is_staggered[0][0],
+ & shiftout[0][0]));
+ }
rvect physical_lower, physical_upper;
rvect interior_lower, interior_upper;
rvect exterior_lower, exterior_upper;
rvect spacing;
- check (not GetDomainSpecification
- (dim,
- & physical_lower[0], & physical_upper[0],
- & interior_lower[0], & interior_upper[0],
- & exterior_lower[0], & exterior_upper[0],
- & spacing[0]));
+ if (domain_from_multipatch and
+ CCTK_IsFunctionAliased ("MultiPatch_GetDomainSpecification"))
+ {
+ check (not MultiPatch_GetDomainSpecification
+ (m, dim,
+ & physical_lower[0], & physical_upper[0],
+ & interior_lower[0], & interior_upper[0],
+ & exterior_lower[0], & exterior_upper[0],
+ & spacing[0]));
+ } else {
+ check (not GetDomainSpecification
+ (dim,
+ & physical_lower[0], & physical_upper[0],
+ & interior_lower[0], & interior_upper[0],
+ & exterior_lower[0], & exterior_upper[0],
+ & spacing[0]));
+ }
// Adapt spacing for convergence level
#warning "TODO: take ml into account"