Routine mshoutb(icounter,CFREQ). Produces the file 'runname.surf.fHz.msh', which can bee used to visualize the solution on the boundary. Arguments: 'icounter' is the frequency index (equal to ifreq); 'cfreq' is the complex frequency (the Laplace variable). Scalar fields included are:
66 pzgemr2d_(&gRows,&ione,
solution->
vecPhinc ,&ione, &ione,descl, gPhinc ,&ione,&ione,descg,&
runinfo->
ctxt);
68 if (0 !=
rank)
return;
72 fprintf(f,
"$MeshFormat\n");
73 fprintf(f,
"2.2 0 %d \n",(
int)
sizeof(
double));
74 fprintf(f,
"$EndMeshFormat\n");
76 fprintf(f,
"$Nodes\n");
79 fprintf(f,
"%d %f %f %f \n",i+1,(
double)
geometry->nodes[i].x,(
double)
geometry->nodes[i].y,(
double)
geometry->nodes[i].z);
81 fprintf(f,
"$EndNodes\n");
83 fprintf(f,
"$Elements\n");
86 fprintf(f,
"%d 3 2 1 1 %d %d %d %d\n",i+1,
geometry->elements[i].idx[0]+1,
geometry->elements[i].idx[1]+1,
geometry->elements[i].idx[2]+1,
geometry->elements[i].idx[3]+1);
88 fprintf(f,
"$EndElements\n");
90 fprintf(f,
"$ElementData\n");
92 fprintf(f,
"\"Re(Incident_Field)\"\n");
94 fprintf(f,
"%f \n",
HZFREQ(cfreq));
96 fprintf(f,
"%d \n",icounter);
103 fprintf(f,
"%d %f\n",iel+1,
CREAL(val));
106 fprintf(f,
"$EndElementData\n");
108 fprintf(f,
"$ElementData\n");
109 fprintf(f,
"%d \n",1);
110 fprintf(f,
"\"Im(Incident_Field)\"\n");
111 fprintf(f,
"%d \n",1);
112 fprintf(f,
"%f \n",
HZFREQ(cfreq));
113 fprintf(f,
"%d \n",3);
114 fprintf(f,
"%d \n",icounter);
115 fprintf(f,
"%d \n",1);
121 fprintf(f,
"%d %f\n",iel+1,
CIMAG(val));
124 fprintf(f,
"$EndElementData\n");
126 fprintf(f,
"$ElementData\n");
127 fprintf(f,
"%d \n",1);
128 fprintf(f,
"\"Abs(Incident_Field)\"\n");
129 fprintf(f,
"%d \n",1);
130 fprintf(f,
"%f \n",
HZFREQ(cfreq));
131 fprintf(f,
"%d \n",3);
132 fprintf(f,
"%d \n",icounter);
133 fprintf(f,
"%d \n",1);
139 fprintf(f,
"%d %f\n",iel+1,
CABS(val));
142 fprintf(f,
"$EndElementData\n");
144 fprintf(f,
"$ElementData\n");
145 fprintf(f,
"%d \n",1);
146 fprintf(f,
"\"Re(Scattered_Field)\"\n");
147 fprintf(f,
"%d \n",1);
148 fprintf(f,
"%f \n",
HZFREQ(cfreq));
149 fprintf(f,
"%d \n",3);
150 fprintf(f,
"%d \n",icounter);
151 fprintf(f,
"%d \n",1);
158 fprintf(f,
"%d %f\n",iel+1,
CREAL(val));
161 fprintf(f,
"$EndElementData\n");
163 fprintf(f,
"$ElementData\n");
164 fprintf(f,
"%d \n",1);
165 fprintf(f,
"\"Im(Scattered_Field)\"\n");
166 fprintf(f,
"%d \n",1);
167 fprintf(f,
"%f \n",
HZFREQ(cfreq));
168 fprintf(f,
"%d \n",3);
169 fprintf(f,
"%d \n",icounter);
170 fprintf(f,
"%d \n",1);
177 fprintf(f,
"%d %f\n",iel+1,
CIMAG(val));
180 fprintf(f,
"$EndElementData\n");
182 fprintf(f,
"$ElementData\n");
183 fprintf(f,
"%d \n",1);
184 fprintf(f,
"\"Abs(Scattered_Field)\"\n");
185 fprintf(f,
"%d \n",1);
186 fprintf(f,
"%f \n",
HZFREQ(cfreq));
187 fprintf(f,
"%d \n",3);
188 fprintf(f,
"%d \n",icounter);
189 fprintf(f,
"%d \n",1);
196 fprintf(f,
"%d %f\n",iel+1,
CABS(val));
199 fprintf(f,
"$EndElementData\n");
201 fprintf(f,
"$ElementData\n");
202 fprintf(f,
"%d \n",1);
203 fprintf(f,
"\"Re(Total_Field)\"\n");
204 fprintf(f,
"%d \n",1);
205 fprintf(f,
"%f \n",
HZFREQ(cfreq));
206 fprintf(f,
"%d \n",3);
207 fprintf(f,
"%d \n",icounter);
208 fprintf(f,
"%d \n",1);
215 fprintf(f,
"%d %f\n",iel+1,
CREAL(val));
218 fprintf(f,
"$EndElementData\n");
220 fprintf(f,
"$ElementData\n");
221 fprintf(f,
"%d \n",1);
222 fprintf(f,
"\"Im(Total_Field)\"\n");
223 fprintf(f,
"%d \n",1);
224 fprintf(f,
"%f \n",
HZFREQ(cfreq));
225 fprintf(f,
"%d \n",3);
226 fprintf(f,
"%d \n",icounter);
227 fprintf(f,
"%d \n",1);
234 fprintf(f,
"%d %f\n",iel+1,
CIMAG(val));
237 fprintf(f,
"$EndElementData\n");
239 fprintf(f,
"$ElementData\n");
240 fprintf(f,
"%d \n",1);
241 fprintf(f,
"\"Abs(Total_Field)\"\n");
242 fprintf(f,
"%d \n",1);
243 fprintf(f,
"%f \n",
HZFREQ(cfreq));
244 fprintf(f,
"%d \n",3);
245 fprintf(f,
"%d \n",icounter);
246 fprintf(f,
"%d \n",1);
253 fprintf(f,
"%d %f\n",iel+1,
CABS(val));
256 fprintf(f,
"$EndElementData\n");
struct run_info * runinfo
Definition: globals.h:34
#define Vec
Definition: types.h:63
int npcols
Definition: structs.h:113
#define VecDestroy(v)
Definition: allocation.h:111
const char * title
Definition: structs.h:135
int ncntr
Definition: structs.h:299
#define CREAL(x)
Definition: functions.h:49
int myrow
Definition: structs.h:115
int nprows
Definition: structs.h:111
void get_filename(char *filename, const char *format,...)
Definition: utils.c:59
#define CIMAG(x)
Definition: functions.h:50
COMPLEX * sol
Definition: structs.h:607
void pzgemr2d_(int *m, int *n, COMPLEX *A, int *ia, int *ja, int *desca, COMPLEX *B, int *ib, int *jb, int *descb, int *ictxt)
Copies a (m x n) submatrix of A from element (ia,ja) on a submatrix of B from element (ib...
int nelmb
Definition: structs.h:295
Vec vecPhinc
Definition: structs.h:578
int nnodb
Definition: structs.h:293
int ctxt
Definition: structs.h:109
int knw
Definition: structs.h:446
void descinit_(int *desc, int *m, int *n, int *mb, int *nb, int *ia, int *ja, int *ictxt, int *llda, int *info)
struct solution_struct * solution
Definition: globals.h:52
#define COMPLEX
Definition: types.h:48
#define CABS(x)
Definition: functions.h:51
struct modsol_info * modsolinfo
Definition: globals.h:44
#define HZFREQ(x)
Definition: functions.h:28
int nsymm
Definition: structs.h:97
int numroc_(int *m, int *mb, int *p, int *ia, int *npr)
int rank
Definition: globals.h:79
struct run_details * rundetails
Definition: globals.h:36
Geometry info structure.
Definition: structs.h:161
#define MAX_PATH
Definition: constants.h:29
int row_block_size
Definition: structs.h:119
#define calloc(n, size)
Definition: allocation.h:37
struct modgeom_info * modgeominfo
Definition: globals.h:38