diff options
author | Erik Schnetter <schnetter@cct.lsu.edu> | 2009-11-10 14:51:43 -0600 |
---|---|---|
committer | Erik Schnetter <schnetter@cct.lsu.edu> | 2009-11-10 14:51:43 -0600 |
commit | 1fc527d47ada6a206e35593f8458f7674b9f7280 (patch) | |
tree | f4c3a405f861dbb11c082b91ee3f8a514203b9f1 /Carpet/Carpet/src/Recompose.cc | |
parent | f2d9e7e8f30bb437f31fd857be3974252d0a7432 (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.cc | 47 |
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" |