1
2
3
4
5
6
7 program testwt
8
9
10
11
12 include 'exodusII.inc'
13
14 integer iin, iout
15 integer exoid, num_dim,num_nodes,elem_map(7),num_elem,num_elem_blk
16 integer num_elem_in_block(10), num_nodes_per_elem(10),numattr(10)
17 integer num_node_sets, num_side_sets
18 integer i, connect(37), nnpe(10)
19 integer ebids(10)
20 integer num_qa_rec, num_info
21 integer cpu_word_size, io_word_size
22
23 real x(100), y(100), z(100)
24
25 character*(MXSTLN) coord_names(3)
26 character*(MXSTLN) cname
27 character*(MXSTLN) qa_record(4,2)
28 character*(MXLNLN) inform(3)
29
30 data iin /5/, iout /6/
31
33 write (iout,'("after exopts, error = ", i4)') ierr
34 cpu_word_size = 0
35 io_word_size = 0
36
37
38
39 exoid =
excre(
"test-nsided.exo",
40 1 exclob, cpu_word_size, io_word_size, ierr)
41 write (iout,'("after excre for test-nsided.exo, id: ", i8)') exoid
42 write (iout,'(" cpu word size: ",i4," io word size: ",i4)')
43 1 cpu_word_size, io_word_size
44 write (iout,'("after excre, error = ", i4)') ierr
45
46
47
48 num_dim = 3
49 num_nodes = 33
50 num_elem = 7
51 num_elem_blk = 1
52 num_node_sets = 0
53 num_side_sets = 0
54
55 call expini (exoid,
"This is a test", num_dim, num_nodes,
56 1 num_elem, num_elem_blk, num_node_sets,
57 2 num_side_sets, ierr)
58
59 write (iout, '("after expini, error = ", i4)' ) ierr
60
61 if (ierr .ne. 0) then
63 call exit (0)
64 endif
65
66
67
68
69 x(1) = 0.0
70 x(2) = 1.0
71 x(3) = 1.0
72 x(4) = 0.0
73
74 y(1) = 0.0
75 y(2) = 0.0
76 y(3) = 1.0
77 y(4) = 1.0
78
79 z(1) = 0.0
80 z(2) = 0.0
81 z(3) = 0.0
82 z(4) = 0.0
83
84
85 x(5) = 1.0
86 x(6) = 2.0
87 x(7) = 2.0
88 x(8) = 1.0
89
90 y(5) = 0.0
91 y(6) = 0.0
92 y(7) = 1.0
93 y(8) = 1.0
94
95 z(5) = 0.0
96 z(6) = 0.0
97 z(7) = 0.0
98 z(8) = 0.0
99
100
101 x(9) = 0.0
102 x(10) = 10.0
103 x(11) = 10.0
104 x(12) = 1.0
105 x(13) = 1.0
106 x(14) = 10.0
107 x(15) = 10.0
108 x(16) = 1.0
109
110 y(9) = 0.0
111 y(10) = 0.0
112 y(11) = 0.0
113 y(12) = 0.0
114 y(13) = 10.0
115 y(14) = 10.0
116 y(15) = 10.0
117 y(16) = 10.0
118
119 z(9) = 0.0
120 z(10) = 0.0
121 z(11) =-10.0
122 z(12) =-10.0
123 z(13) = 0.0
124 z(14) = 0.0
125 z(15) =-10.0
126 z(16) =-10.0
127
128
129 x(17) = 0.0
130 x(18) = 1.0
131 x(19) = 10.0
132 x(20) = 7.0
133
134 y(17) = 0.0
135 y(18) = 0.0
136 y(19) = 0.0
137 y(20) = 5.0
138
139 z(17) = 0.0
140 z(18) = 5.0
141 z(19) = 2.0
142 z(20) = 3.0
143
144
145 x(21) = 3.0
146 x(22) = 6.0
147 x(23) = 0.0
148 x(24) = 3.0
149 x(25) = 6.0
150 x(26) = 0.0
151
152 y(21) = 0.0
153 y(22) = 0.0
154 y(23) = 0.0
155 y(24) = 2.0
156 y(25) = 2.0
157 y(26) = 2.0
158
159 z(21) = 6.0
160 z(22) = 0.0
161 z(23) = 0.0
162 z(24) = 6.0
163 z(25) = 2.0
164 z(26) = 0.0
165
166
167 x(27) = 2.7
168 x(28) = 6.0
169 x(29) = 5.7
170 x(30) = 3.7
171
172 y(27) = 1.7
173 y(28) = 1.7
174 y(29) = 1.7
175 y(30) = 0.0
176
177 z(27) = 2.7
178 z(28) = 3.3
179 z(29) = 1.7
180 z(30) = 2.3
181
182
183 x(31) = 0.0
184 x(32) = 10.0
185 x(33) = 10.0
186
187 y(31) = 0.0
188 y(32) = 0.0
189 y(33) = 10.0
190
191 z(31) = 0.0
192 z(32) = 0.0
193 z(33) = 10.0
194
195 call expcor (exoid, x, y, z, ierr)
196 write (iout, '("after expcor, error = ", i4)' ) ierr
197 if (ierr .ne. 0) then
199 call exit (0)
200 endif
201
202 coord_names(1) = "xcoor"
203 coord_names(2) = "ycoor"
204 coord_names(3) = "zcoor"
205
206 call expcon (exoid, coord_names, ierr)
207 write (iout, '("after expcon, error = ", i4)' ) ierr
209 if (ierr .ne. 0) then
211 call exit (0)
212 endif
213
214
215
216 do 10 i = 1, num_elem
217 elem_map(i) = i
21810 continue
219
220 call expmap (exoid, elem_map, ierr)
221 write (iout, '("after expmap, error = ", i4)' ) ierr
222 if (ierr .ne. 0) then
224 call exit (0)
225 endif
226
227
228
229 num_elem_in_block(1) = 7
230
231 num_nodes_per_elem(1) = 37
232
233 ebids(1) = 10
234
235 numattr(1) = 0
236
237 cname = "nsided"
238
239 call expelb (exoid,ebids(1),cname,num_elem_in_block(1),
240 1 num_nodes_per_elem(1),numattr(1),ierr)
241 write (iout, '("after expelb, error = ", i4)' ) ierr
242 if (ierr .ne. 0) then
244 call exit (0)
245 endif
246
247
248
249 connect( 1) = 1
250 connect( 2) = 2
251 connect( 3) = 3
252 connect( 4) = 4
253 nnpe(1) = 4
254
255 connect( 5) = 5
256 connect( 6) = 6
257 connect( 7) = 7
258 connect( 8) = 8
259 nnpe(2) = 4
260
261 connect( 9) = 9
262 connect(10) = 10
263 connect(11) = 11
264 connect(12) = 12
265 connect(13) = 13
266 connect(14) = 14
267 connect(15) = 15
268 connect(16) = 16
269 nnpe(3) = 8
270
271 connect(17) = 17
272 connect(18) = 18
273 connect(19) = 19
274 connect(20) = 20
275 nnpe(4) = 4
276
277 connect(21) = 21
278 connect(22) = 22
279 connect(23) = 23
280 connect(24) = 24
281 connect(25) = 25
282 connect(26) = 26
283 nnpe(5) = 6
284
285 connect(27) = 17
286 connect(28) = 18
287 connect(29) = 19
288 connect(30) = 20
289 connect(31) = 27
290 connect(32) = 28
291 connect(33) = 30
292 connect(34) = 29
293 nnpe(6) = 8
294
295 connect(35) = 31
296 connect(36) = 32
297 connect(37) = 33;
298 nnpe(7) = 3
299
300 call expelc (exoid, ebids(1), connect, ierr)
301 write (iout, '("after expelc, error = ", i4)' ) ierr
302 if (ierr .ne. 0) then
304 call exit (0)
305 endif
306
307 call expecpp(exoid, exeblk, ebids(1), nnpe, ierr)
308 write (iout, '("after expecpp, error = ", i4)' ) ierr
309 if (ierr .ne. 0) then
311 call exit (0)
312 endif
313
314
315
316 num_qa_rec = 2
317
318 qa_record(1,1) = "TESTWT fortran version"
319 qa_record(2,1) = "testwt"
320 qa_record(3,1) = "07/07/93"
321 qa_record(4,1) = "15:41:33"
322 qa_record(1,2) = "FASTQ"
323 qa_record(2,2) = "fastq"
324 qa_record(3,2) = "07/07/93"
325 qa_record(4,2) = "16:41:33"
326
327 call expqa (exoid, num_qa_rec, qa_record, ierr)
328 write (iout, '("after expqa, error = ", i4)' ) ierr
329 if (ierr .ne. 0) then
331 call exit (0)
332 endif
333
334
335
336 num_info = 3
337
338 inform(1) = "This is the first information record."
339 inform(2) = "This is the second information record."
340 inform(3) = "This is the third information record."
341
342 call expinf (exoid, num_info, inform, ierr)
343 write (iout, '("after expinf, error = ", i4)' ) ierr
344 if (ierr .ne. 0) then
346 call exit (0)
347 endif
348
349
350 call putfrm(exoid)
351
352
353
355 write (iout, '("after exclos, error = ", i4)' ) ierr
356
357 stop
358 end
359
360 subroutine putfrm(exoid)
361 implicit none
362 include 'exodusII.inc'
363
364 integer exoid, ierr, i
365 integer numfrm;
366 integer cfids(3), tags(3)
367 real coord(27)
368
369 numfrm = 3
370
371 cfids(1) = 1
372 cfids(2) = 11
373 cfids(3) = 111
374
375 tags(1) = excfrec
376 tags(2) = excfcyl
377 tags(3) = excfsph
378
379
380 do i=0,2
381 coord(9*i+1) = i+0.1
382 coord(9*i+2) = i+0.2
383 coord(9*i+3) = i+0.3
384 coord(9*i+4) = i+0.4
385 coord(9*i+5) = i+0.5
386 coord(9*i+6) = i+0.6
387 coord(9*i+7) = i+0.7
388 coord(9*i+8) = i+0.8
389 coord(9*i+9) = i+0.9
390 end do
391
392 call expfrm(exoid, numfrm, cfids, coord, tags, ierr);
393 write (6,'("after expfrm, error = ", i4)') ierr
394
395 return
396 end
int excre(char *path, int *clobmode, int *cpu_word_size, int *io_word_size, int *ierr, int pathlen)
Definition exo_jack.c:179
void expini(int *idexo, char *title, void_int *num_dim, void_int *num_nodes, void_int *num_elem, void_int *num_elem_blk, void_int *num_node_sets, void_int *num_side_sets, int *ierr, int titlelen)
Definition exo_jack.c:242
void expcor(int *idexo, real *x_coor, real *y_coor, real *z_coor, int *ierr)
Definition exo_jack.c:558
void expqa(int *idexo, int *num_qa_records, char *qa_record, int *ierr, int qa_recordlen)
Definition exo_jack.c:313
void exclos(int *idexo, int *ierr)
Definition exo_jack.c:230
void expfrm(int *idexo, int *nframe, void_int *cfids, real *coord, int *tags, int *ierr)
Definition exo_jack.c:2584
void expelb(int *idexo, entity_id *elem_blk_id, char *elem_type, void_int *num_elem_this_blk, void_int *num_nodes_per_elem, void_int *num_attr, int *ierr, int elem_typelen)
Definition exo_jack.c:764
void expecpp(int *idexo, int *obj_type, entity_id *elem_blk_id, int *counts, int *ierr)
Definition exo_jack.c:885
void expmap(int *idexo, void_int *elem_map, int *ierr)
Definition exo_jack.c:695
void expelc(int *idexo, entity_id *elem_blk_id, void_int *connect, int *ierr)
Definition exo_jack.c:846
void expcon(int *idexo, char *coord_names, int *ierr, int coord_nameslen)
Definition exo_jack.c:576
void expinf(int *idexo, int *num_info, char *info, int *ierr, int infolen)
Definition exo_jack.c:449
void exopts(int *option_val, int *ierr)
Definition exo_jack.c:2656
void exupda(int *idexo, int *ierr)
Definition exo_jack.c:236