xref: /phasta/M2N/include/new_interfaceM2N.h (revision 595995161822a203c8467e0e4a253d7bd7d6df32)
1*59599516SKenneth E. Jansen #ifndef __NEW_INTERFACEM2N_H__
2*59599516SKenneth E. Jansen #define __NEW_INTERFACEM2N_H__
3*59599516SKenneth E. Jansen 
4*59599516SKenneth E. Jansen #include <FCMangle.h>
5*59599516SKenneth E. Jansen #include <mpi.h>
6*59599516SKenneth E. Jansen 
7*59599516SKenneth E. Jansen #define Write_M2N     FortranCInterface_GLOBAL_(write_m2n,WRITE_M2N)
8*59599516SKenneth E. Jansen #define Write_M2N_SolOnly FortranCInterface_GLOBAL_(write_m2n_solonly,WRITE_M2N_SOLONLY)
9*59599516SKenneth E. Jansen #define Write_M2N_Field   FortranCInterface_GLOBAL_(write_m2n_field,WRITE_M2N_Field)
10*59599516SKenneth E. Jansen #define Write_M2N_PhAvg2  FortranCInterface_GLOBAL_(write_m2n_phavg2,WRITE_M2N_PHAVG2)
11*59599516SKenneth E. Jansen #define Write_Restart FortranCInterface_GLOBAL_(write_restart,WRITE_RESTART)
12*59599516SKenneth E. Jansen #define Write_Error   FortranCInterface_GLOBAL_(write_error,WRITE_ERROR)
13*59599516SKenneth E. Jansen #define Write_Displ   FortranCInterface_GLOBAL_(write_displ,WRITE_DISPL)
14*59599516SKenneth E. Jansen #define Write_Field   FortranCInterface_GLOBAL_(write_field,WRITE_FIELD)
15*59599516SKenneth E. Jansen #define Write_PhAvg   FortranCInterface_GLOBAL_(write_phavg,WRITE_PHAVG)
16*59599516SKenneth E. Jansen #define Write_PhAvg2  FortranCInterface_GLOBAL_(write_phavg2,WRITE_PHAVG2)
17*59599516SKenneth E. Jansen #define Write_d2wall  FortranCInterface_GLOBAL_(write_d2wall,WRITE_D2WALL)
18*59599516SKenneth E. Jansen #define read_d2wall   FortranCInterface_GLOBAL_(read_d2wall,READ_D2WALL)
19*59599516SKenneth E. Jansen 
20*59599516SKenneth E. Jansen extern char phasta_iotype[80];
21*59599516SKenneth E. Jansen extern int field_flag;
22*59599516SKenneth E. Jansen extern int f_descriptor;
23*59599516SKenneth E. Jansen 
24*59599516SKenneth E. Jansen void
25*59599516SKenneth E. Jansen Write_M2N(      int* pid,
26*59599516SKenneth E. Jansen                 int* irankN,
27*59599516SKenneth E. Jansen                 int* stepno,
28*59599516SKenneth E. Jansen                 int* nshg,
29*59599516SKenneth E. Jansen                 int* numVars,
30*59599516SKenneth E. Jansen                 int* ndofybar,
31*59599516SKenneth E. Jansen                 int* ndoferrors,
32*59599516SKenneth E. Jansen                 double* array1,
33*59599516SKenneth E. Jansen                 double* array2,
34*59599516SKenneth E. Jansen                 double* array3,
35*59599516SKenneth E. Jansen                 double* array4);
36*59599516SKenneth E. Jansen 
37*59599516SKenneth E. Jansen void
38*59599516SKenneth E. Jansen Write_M2N_SolOnly( int* pid,
39*59599516SKenneth E. Jansen                        int* irankN,
40*59599516SKenneth E. Jansen                        int* stepno,
41*59599516SKenneth E. Jansen                        int* nshg,
42*59599516SKenneth E. Jansen                        int* numVars,
43*59599516SKenneth E. Jansen                        double* array1 );
44*59599516SKenneth E. Jansen 
45*59599516SKenneth E. Jansen void
46*59599516SKenneth E. Jansen Write_M2N_Field(  int* pid,
47*59599516SKenneth E. Jansen                   int* irankN,
48*59599516SKenneth E. Jansen                   char* filemode,
49*59599516SKenneth E. Jansen                   char* fieldtag,
50*59599516SKenneth E. Jansen                   int* tagsize,
51*59599516SKenneth E. Jansen                   void* array,
52*59599516SKenneth E. Jansen                   char* arraytype,
53*59599516SKenneth E. Jansen                   int* nshg,
54*59599516SKenneth E. Jansen                   int* numvars,
55*59599516SKenneth E. Jansen                   int* stepno);
56*59599516SKenneth E. Jansen 
57*59599516SKenneth E. Jansen void
58*59599516SKenneth E. Jansen Write_M2N_PhAvg2( int* pid,
59*59599516SKenneth E. Jansen               int* irankN,
60*59599516SKenneth E. Jansen               char* filemode,
61*59599516SKenneth E. Jansen               char* fieldtag,
62*59599516SKenneth E. Jansen               int* tagsize,
63*59599516SKenneth E. Jansen               int* iphase,
64*59599516SKenneth E. Jansen               int* nphasesincycle,
65*59599516SKenneth E. Jansen               void* array,
66*59599516SKenneth E. Jansen               char* arraytype,
67*59599516SKenneth E. Jansen               int* nshg,
68*59599516SKenneth E. Jansen               int* numvars,
69*59599516SKenneth E. Jansen               int* stepno);
70*59599516SKenneth E. Jansen 
71*59599516SKenneth E. Jansen void
72*59599516SKenneth E. Jansen Write_Restart(  int* pid,
73*59599516SKenneth E. Jansen                 int* stepno,
74*59599516SKenneth E. Jansen                 int* nshg,
75*59599516SKenneth E. Jansen                 int* numVars,
76*59599516SKenneth E. Jansen                 double* array1,
77*59599516SKenneth E. Jansen                 double* array2 );
78*59599516SKenneth E. Jansen 
79*59599516SKenneth E. Jansen void
80*59599516SKenneth E. Jansen Write_Error(  int* pid,
81*59599516SKenneth E. Jansen               int* stepno,
82*59599516SKenneth E. Jansen               int* nshg,
83*59599516SKenneth E. Jansen               int* numVars,
84*59599516SKenneth E. Jansen               double* array1 );
85*59599516SKenneth E. Jansen 
86*59599516SKenneth E. Jansen void
87*59599516SKenneth E. Jansen Write_Displ(  int* pid,
88*59599516SKenneth E. Jansen               int* stepno,
89*59599516SKenneth E. Jansen               int* nshg,
90*59599516SKenneth E. Jansen               int* numVars,
91*59599516SKenneth E. Jansen               double* array1 );
92*59599516SKenneth E. Jansen 
93*59599516SKenneth E. Jansen void
94*59599516SKenneth E. Jansen Write_Field(  int *pid,
95*59599516SKenneth E. Jansen               char* filemode,
96*59599516SKenneth E. Jansen               char* fieldtag,
97*59599516SKenneth E. Jansen               int* tagsize,
98*59599516SKenneth E. Jansen               void* array,
99*59599516SKenneth E. Jansen               char* arraytype,
100*59599516SKenneth E. Jansen               int* nshg,
101*59599516SKenneth E. Jansen               int* numvars,
102*59599516SKenneth E. Jansen               int* stepno);
103*59599516SKenneth E. Jansen 
104*59599516SKenneth E. Jansen void
105*59599516SKenneth E. Jansen Write_PhAvg2( int* pid,
106*59599516SKenneth E. Jansen               char* filemode,
107*59599516SKenneth E. Jansen               char* fieldtag,
108*59599516SKenneth E. Jansen               int* tagsize,
109*59599516SKenneth E. Jansen               int* iphase,
110*59599516SKenneth E. Jansen               int* nphasesincycle,
111*59599516SKenneth E. Jansen               void* array,
112*59599516SKenneth E. Jansen               char* arraytype,
113*59599516SKenneth E. Jansen               int* nshg,
114*59599516SKenneth E. Jansen               int* numvars,
115*59599516SKenneth E. Jansen               int* stepno);
116*59599516SKenneth E. Jansen 
117*59599516SKenneth E. Jansen void
118*59599516SKenneth E. Jansen Write_d2wall(   int* pid,
119*59599516SKenneth E. Jansen                 int* numnp,
120*59599516SKenneth E. Jansen                 double* array1 );
121*59599516SKenneth E. Jansen 
122*59599516SKenneth E. Jansen void
123*59599516SKenneth E. Jansen read_d2wall(  int* pid,
124*59599516SKenneth E. Jansen               int* numnp,
125*59599516SKenneth E. Jansen               double* array1,
126*59599516SKenneth E. Jansen               int* foundd2wall );
127*59599516SKenneth E. Jansen 
128*59599516SKenneth E. Jansen 
129*59599516SKenneth E. Jansen #endif //header guard
130