aboutsummaryrefslogtreecommitdiff
path: root/src/include/pGH.h
diff options
context:
space:
mode:
authorallen <allen@b61c5cb5-eaca-4651-9a7a-d64986f99364>1999-10-17 11:15:53 +0000
committerallen <allen@b61c5cb5-eaca-4651-9a7a-d64986f99364>1999-10-17 11:15:53 +0000
commite4b6654873ce74c6246b32ad6ac57239901f6b1a (patch)
tree3075232428210c422eb52caabfd90bf14704193c /src/include/pGH.h
parentb1ad68a65f9b11ffd7c586b9971e5c7efdc680c9 (diff)
Adding infrastructure for 1D and 2D GFs ... but haven't added decomposition
and copying code yet git-svn-id: http://svn.cactuscode.org/arrangements/CactusPUGH/PUGH/trunk@97 b61c5cb5-eaca-4651-9a7a-d64986f99364
Diffstat (limited to 'src/include/pGH.h')
-rw-r--r--src/include/pGH.h27
1 files changed, 14 insertions, 13 deletions
diff --git a/src/include/pGH.h b/src/include/pGH.h
index bd7942b..c22a238 100644
--- a/src/include/pGH.h
+++ b/src/include/pGH.h
@@ -37,18 +37,19 @@ typedef struct PGH {
/* pGH identifier */
void * callerid;
+ int dim; /* The dimension of the GH */
/* Size of the processor group */
int nprocs; /* Number of processors */
int myproc; /* My processor */
- int nprocx,nprocy,nprocz; /* Processor topology */
+ int *nproc; /* Processor topology */
int commmodel; /* Comm model is PUGH_ALLOCATEDBUFFERS */
/* or PUGH_DERIVEDTYPES. Currently unused */
/* Size of the problems */
int nvariables; /* # of Grid Functions */
void ***variables; /* Pointers to them */
- int nx,ny,nz; /* Physical size of the Problem */
- int nghostzones; /* Width of ghost zone */
+ int *nsize; /* Physical size of the Problem */
+ int *nghostzones; /* Width of ghost zone */
/* What time level we're on */
int timelevel;
@@ -58,34 +59,34 @@ typedef struct PGH {
int periodic; /* Is the system periodic? */
int **lb; /* Lower bound (nprocs X 3) for each proc */
int **ub; /* Upper bound (same sizes) */
- int lnx, lny, lnz; /* Size on this processor */
+ int *lnsize; /* Size on this processor */
int npoints; /* LOCAL number of points on this proc. */
int *rnpoints; /* Number of points on each proc */
- int *rnx, *rny, *rnz; /* Number of points on each proc */
+ int **rnsize; /* Number of points on each proc */
int **neighbors; /* An array of size nprocs X 6 of the
* neighbors on each side. The entry in
* this array is the processor number of
* the neighbor.
*/
int stagger; /* Is staggering turned on? */
- int spxyz[3]; /* From what index to start slicing: 1 for octant, */
+ /*int spxyz[3];*/ /* From what index to start slicing: 1 for octant, */
/* nx/2 for box, e.g. Set in SetupSlicingCenter, */
/* used in Write3D and modfied in in BoxInBox.c ! */
int forceSync; /* force synchronisation of GFs with storage */
- int sp2dxyz[3]; /* Slice point for two d slices. */
+ /*int sp2dxyz[3];*/ /* Slice point for two d slices. */
/* Information about ghosts and overlaps. */
- int ownership[PUGH_NSTAGGER][3][2]; /* The box owned in each direction. */
- /* Indexing here is [stagger][ijk][min/max]*/
+ int *ownership[PUGH_NSTAGGER][2]; /* The box owned in each direction. */
+ /* Indexing here is [stagger][min/max][dir]*/
- int ghosts[PUGH_NSTAGGER][6][3][2]; /* The ghost zones on each face. */
+ int **ghosts[PUGH_NSTAGGER][2]; /* The ghost zones on each face. */
/* Indexing here is */
- /* [stagger][face][ijk][min/max] */
+ /* [stagger][min/max][face][dir] */
- int overlap[PUGH_NSTAGGER][6][3][2]; /* The overlap region owned on each face. */
+ int **overlap[PUGH_NSTAGGER][2]; /* The overlap region owned on each face. */
/* Indexing here is */
- /* [stagger][face][ijk][min/max] */
+ /* [stagger][min/max][face][ijk] */
/* Coordinate information */