aboutsummaryrefslogtreecommitdiff
path: root/src/patch/patch_system.hh
diff options
context:
space:
mode:
authorjthorn <jthorn@f88db872-0e4f-0410-b76b-b9085cfa78c5>2001-07-16 13:16:28 +0000
committerjthorn <jthorn@f88db872-0e4f-0410-b76b-b9085cfa78c5>2001-07-16 13:16:28 +0000
commit537faf42ce77f416668a395bc40bb444b35fa7b0 (patch)
treee2143b029d5da2812f0ee2aff15b6870c7639647 /src/patch/patch_system.hh
parentdabe2b4fcd23a1321ebc92cfe3e770e1270cd844 (diff)
* add remaining setup/interlink ghost zone/frontier functions
* add code to verify setup/interlink of ghost zones/frontiers git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/AHFinderDirect/trunk@168 f88db872-0e4f-0410-b76b-b9085cfa78c5
Diffstat (limited to 'src/patch/patch_system.hh')
-rw-r--r--src/patch/patch_system.hh23
1 files changed, 16 insertions, 7 deletions
diff --git a/src/patch/patch_system.hh b/src/patch/patch_system.hh
index 2e80bcc..a4caace 100644
--- a/src/patch/patch_system.hh
+++ b/src/patch/patch_system.hh
@@ -204,11 +204,7 @@ public:
// get patches by patch number
patch &ith_patch(int pn) const
- {
- assert(pn >= 0);
- assert(pn < N_patches_);
- return *all_patches_[pn];
- }
+ { return (*all_patches_)(pn); }
// find a patch by name, return patch number; error_exit() if not found
int patch_number_of_name(const char *name) const;
@@ -236,6 +232,8 @@ private:
//
// ***** helper functions for constructor *****
//
+
+ // create/interlink patches, ghost zones, and frontiers
void setup_full_patch_system(int N_ghost_zones, fp delta_drho_dsigma,
int min_gfn_in, int max_gfn_in,
int interpolator_order_in);
@@ -249,6 +247,17 @@ private:
int min_gfn_in, int max_gfn_in,
int interpolator_order_in);
+ // create/interlink a pair of interpatch ghost zones
+ void setup_adjacent_ghost_zones(patch &px, patch &py);
+
+ // create/interlink a pair of patch frontiers
+ void setup_adjacent_patch_frontiers(patch &px, patch &py,
+ int interpolator_order);
+
+ // assert() that all ghost zones (and frontiers, where applicable)
+ // of all patches are fully setup
+ void assert_all_ghost_zones_fully_setup() const;
+
private:
// we forbid copying and passing by value
// by declaring the copy constructor and assignment operator
@@ -261,6 +270,6 @@ private:
enum patch_system_type type_;
int N_patches_;
- // --> array [0...N_patches_) of --> to individual patches
- patch* all_patches_; // [pn] -> patch
+ // --> array(pn) of pointers to individual patches
+ array1d<patch *> *all_patches_;
};