diff options
author | allen <allen@b61c5cb5-eaca-4651-9a7a-d64986f99364> | 1999-10-21 08:33:07 +0000 |
---|---|---|
committer | allen <allen@b61c5cb5-eaca-4651-9a7a-d64986f99364> | 1999-10-21 08:33:07 +0000 |
commit | aa701dd7c16955943c35777ee37d7e6babb88263 (patch) | |
tree | babe64056dd8d8e7d63afed1f0d06454065dcad2 /src/include/pGV.h | |
parent | c9ec404518cd9ecf522bf7492257ca9bbe852ab7 (diff) |
The general structure for a grid variable, not used yet.
git-svn-id: http://svn.cactuscode.org/arrangements/CactusPUGH/PUGH/trunk@113 b61c5cb5-eaca-4651-9a7a-d64986f99364
Diffstat (limited to 'src/include/pGV.h')
-rw-r--r-- | src/include/pGV.h | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/src/include/pGV.h b/src/include/pGV.h new file mode 100644 index 0000000..5784a67 --- /dev/null +++ b/src/include/pGV.h @@ -0,0 +1,63 @@ + /*@@ + @header pGV.h + @date Wed Oct 13 01:14:02 CEST 1999 + @author Gabrielle Allen + @desc + The Pugh Grid Variable structure. Based heavily on the former pGH.h and pGF.h + @enddesc + @version $Id$ + @@*/ + +#include "pugh_constants.h" + +typedef struct PGV { + + /* Size of the problems */ + int *size; /* Size of array */ + int *nghostzones; /* Width of ghost zone in each direction */ + + /* Processor group layouts */ + CCTK_REAL maxskew; /* Maximum point skew */ + int **lb; /* Lower bound (nprocs X 3) for each proc */ + int **ub; /* Upper bound (same sizes) */ + int *lsize; /* Size on this processor */ + int npoints; /* LOCAL number of points on this proc. */ + int *rnpoints; /* Number of points on each proc */ + int **rsize; /* Number of points on each proc */ + int **neighbors; /* An array of size nprocs X dim*2 of the + * neighbors on each side. The entry in + * this array is the processor number of + * the neighbor. + */ + + char *name; /* The name of the grid function */ + int gvindex; /* My ID number in my GH parent. */ + void *padddata; /* Storage for the data. */ + void *data; /* See the note above. */ + int *buffer_sz; /* Size of the face ghost zones */ + void **send_buffer; /* Storage for buffered Comm if */ + void **recv_buffer; /* we don't use derived types */ + int commflag; /* What is the comm flag set to? */ + int *docomm; /* Do we do comm or not? */ + int storage; /* Do we have storage or not? */ + int stagger; /* Only Vertex Centered now... */ + + struct PGH *parentGH; /* The GH to which I belong */ + /* Note this is struct PGH whic is + typedeffed to pGH in pGH.h, but + that is included AFTER this so we + need the full name for the lookahead + structure reference thingy. + */ + + int varsize; /* The size of the data */ + int vtype; /* The type of the data */ + int gtype; /* Variable type (GF, scalar, array) */ + +#ifdef MPI + MPI_Request *sreq, *rreq; /* Comm requests and statuses. */ + MPI_Status ms; +#endif + +} pGV; + |