/* ======== This structure MUST * match the fortran common block /globals/ in 'globals.h' */ /* In turn, match these to the defines in iq.h */ #define NBDY 6 #define NBDY2 2 /* #define NBDYF (2*NBDY+4*NBDY2) */ #define NBDYF (NBDY+2*NBDY2) #define MX_AXIS 2048 #define COORDS (2*NBDYF+MX_AXIS+1) /* These, too, must match iq.h */ #define NX 2048 #define NY 2048 #define NZ 2048 #define MAXCM 128 typedef struct _globals_t { int restart; int nstep, ndump; float time; float tdump, dtdump; float dtime, safety, dtmin, dtmax; int ncheckpoint; int stop_step; float stop_time; float gamma; int iseed, kmax; float velamp,ratsc,wdthk,roamb,pgamb; int nthreads; char runName[20]; char rootDir[256], homeDir[256]; char globalsName[256]; int ipadme; double xxl[COORDS], yyl[COORDS], zzl[COORDS]; char hostnames[MAXCM][16]; } globals_t; globals_t globals; void rdparams(void); int readGlobals(); int writeGlobals();