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
committerErik Schnetter <schnetter@cct.lsu.edu>2009-11-10 14:51:43 -0600
commit1fc527d47ada6a206e35593f8458f7674b9f7280 (patch)
treef4c3a405f861dbb11c082b91ee3f8a514203b9f1 /Carpet/Carpet/src/Recompose.cc
parentf2d9e7e8f30bb437f31fd857be3974252d0a7432 (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"