Exodus 7.22

/exodus_for/test/testwt2.f
1 C Copyright (c) 2005-2017 National Technology & Engineering Solutions
2 C of Sandia, LLC (NTESS). Under the terms of Contract DE-NA0003525 with
3 C NTESS, the U.S. Government retains certain rights in this software.
4 C
5 C Redistribution and use in source and binary forms, with or without
6 C modification, are permitted provided that the following conditions are
7 C met:
8 C
9 C * Redistributions of source code must retain the above copyright
10 C notice, this list of conditions and the following disclaimer.
11 C
12 C * Redistributions in binary form must reproduce the above
13 C copyright notice, this list of conditions and the following
14 C disclaimer in the documentation and/or other materials provided
15 C with the distribution.
16 C
17 C * Neither the name of NTESS nor the names of its
18 C contributors may be used to endorse or promote products derived
19 C from this software without specific prior written permission.
20 C
21 C THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
22 C "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
23 C LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
24 C A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
25 C OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
26 C SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
27 C LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
28 C DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
29 C THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
30 C (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
31 C OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
32 C
33
34 program testwt2
35 c
36 c This is a test program for the Fortran binding of the EXODUS II
37 c database write routines. It tests multiple simultaneous output files.
38 c
39 c 09/07/93 V.R. Yarberry - Revised for 2.00 API
40
41 include 'exodusII.inc'
42
43 integer iin, iout
44 integer exoid, num_dim, num_nodes, num_elem, num_elem_blk
45 integer exoid2, num_dim2, num_nodes2, num_elem2, num_elem_blk2
46 integer num_elem_in_block(10), num_node_sets
47 integer num_elem_in_block2(10), num_node_sets2
48 integer num_side_sets, num_nodes_per_elem(10), numattr(10)
49 integer num_side_sets2, num_nodes_per_elem2(10), numattr2(10)
50 integer i, j, k, m, elem_map(5), connect(10)
51 integer elem_map2(5), connect2(10)
52 integer node_list(100), elem_list(100), side_list(100)
53 integer node_list2(100), elem_list2(100), side_list2(100)
54 integer ebids(10),ids(10),num_nodes_per_set(10)
55 integer num_elem_per_set(10), num_df_per_set(10)
56 integer ebids2(10)
57 integer df_ind(10), node_ind(10), elem_ind(10)
58 integer num_qa_rec, num_info
59 integer num_qa_rec2,num_info2
60 integer num_glo_vars, num_nod_vars, num_ele_vars
61 integer num_glo_vars2, num_nod_vars2, num_ele_vars2
62 integer truth_tab(3,5)
63 integer whole_time_step, num_time_steps
64 integer cpu_word_size, io_word_size
65 integer prop_array(2)
66
67 real glob_var_vals(100), nodal_var_vals(100)
68 real time_value, elem_var_vals(100)
69 real time_value2
70 real x(100), y(100), z(100)
71 real x2(100), y2(100), z2(100)
72 real attrib(100), dist_fact(100)
73 real attrib2(100), dist_fact2(100)
74
75 character*(MXLNLN) title
76 character*(MXLNLN) title2
77 character*(MXSTLN) coord_names(3)
78 character*(MXSTLN) coord_names2(3)
79 character*(MXSTLN) cname
80 character*(MXSTLN) cname2
81 character*(MXSTLN) var_names(3)
82 character*(MXSTLN) var_names2(3)
83 character*(MXSTLN) qa_record(4,2)
84 character*(MXSTLN) qa_record2(4,2)
85 character*(MXLNLN) inform(3)
86 character*(MXLNLN) inform2(3)
87 character*(MXSTLN) prop_names(2)
88
89 data iin /5/, iout /6/
90
91 c
92 c create EXODUS II files
93 c
94 cpu_word_size = 0
95 io_word_size = 4
96 c
97 c first create a "regular" file that contains everything except
98 c history variable info
99 c
100 exoid = excre("test.exo",
101 1 exclob, cpu_word_size, io_word_size, ierr)
102 write (iout,'("after excre for test.exo,id: ",i4,", err=",i3)')
103 1 exoid, ierr
104 write (iout,'(" cpu word size: ",i4," io word size: ",i4)')
105 1 cpu_word_size, io_word_size
106 write (iout, '("after excre, error = ", i4)' ) ierr
107
108 exoid2= excre("test2.exo",
109 1 exclob, cpu_word_size, io_word_size, ierr)
110 write (iout,'("after excre for test2.exo,id: ",i4,", err=",i3)')
111 1 exoid2, ierr
112 write (iout, '("after excre (2), error = ", i4)' ) ierr
113
114 c
115 c initialize file with parameters
116 c
117
118 title = "This is test 2"
119 num_dim = 3
120 num_nodes = 26
121 num_elem = 5
122 num_elem_blk = 5
123 num_node_sets = 2
124 num_side_sets = 5
125
126 call expini (exoid, title, num_dim, num_nodes,
127 1 num_elem, num_elem_blk, num_node_sets,
128 2 num_side_sets, ierr)
129
130 write (iout, '("after expini, error = ", i4)' ) ierr
131
132 title2 = "This is test 2"
133 num_dim2 = 3
134 num_nodes2 = 26
135 num_elem2 = 5
136 num_elem_blk2 = 5
137 num_node_sets2 = 2
138 num_side_sets2 = 5
139
140 call expini (exoid2, title2, num_dim2, num_nodes2,
141 1 num_elem2, num_elem_blk2, num_node_sets2,
142 2 num_side_sets2, ierr)
143
144 write (iout, '("after expini (2), error = ", i4)' ) ierr
145
146
147 c
148 c write nodal coordinates values and names to database
149 c
150 c Quad #1
151 x(1) = 0.0
152 x(2) = 1.0
153 x(3) = 1.0
154 x(4) = 0.0
155
156 y(1) = 0.0
157 y(2) = 0.0
158 y(3) = 1.0
159 y(4) = 1.0
160
161 z(1) = 0.0
162 z(2) = 0.0
163 z(3) = 0.0
164 z(4) = 0.0
165
166 c Quad #2
167 x(5) = 1.0
168 x(6) = 2.0
169 x(7) = 2.0
170 x(8) = 1.0
171
172 y(5) = 0.0
173 y(6) = 0.0
174 y(7) = 1.0
175 y(8) = 1.0
176
177 z(5) = 0.0
178 z(6) = 0.0
179 z(7) = 0.0
180 z(8) = 0.0
181
182 c Hex #1
183 x(9) = 0.0
184 x(10) = 10.0
185 x(11) = 10.0
186 x(12) = 1.0
187 x(13) = 1.0
188 x(14) = 10.0
189 x(15) = 10.0
190 x(16) = 1.0
191
192 y(9) = 0.0
193 y(10) = 0.0
194 y(11) = 0.0
195 y(12) = 0.0
196 y(13) = 10.0
197 y(14) = 10.0
198 y(15) = 10.0
199 y(16) = 10.0
200
201 z(9) = 0.0
202 z(10) = 0.0
203 z(11) =-10.0
204 z(12) =-10.0
205 z(13) = 0.0
206 z(14) = 0.0
207 z(15) =-10.0
208 z(16) =-10.0
209
210 c Tetra #1
211 x(17) = 0.0
212 x(18) = 1.0
213 x(19) = 10.0
214 x(20) = 7.0
215
216 y(17) = 0.0
217 y(18) = 0.0
218 y(19) = 0.0
219 y(20) = 5.0
220
221 z(17) = 0.0
222 z(18) = 5.0
223 z(19) = 2.0
224 z(20) = 3.0
225
226 c Wedge #1
227 x(21) = 3.0
228 x(22) = 6.0
229 x(23) = 0.0
230 x(24) = 3.0
231 x(25) = 6.0
232 x(26) = 0.0
233
234 y(21) = 0.0
235 y(22) = 0.0
236 y(23) = 0.0
237 y(24) = 2.0
238 y(25) = 2.0
239 y(26) = 2.0
240
241 z(21) = 6.0
242 z(22) = 0.0
243 z(23) = 0.0
244 z(24) = 6.0
245 z(25) = 2.0
246 z(26) = 0.0
247
248 call expcor (exoid, x, y, z, ierr)
249 write (iout, '("after expcor, error = ", i4)' ) ierr
250
251 c Quad #1
252 x2(1) = 0.0
253 x2(2) = 1.0
254 x2(3) = 1.0
255 x2(4) = 0.0
256
257 y2(1) = 0.0
258 y2(2) = 0.0
259 y2(3) = 1.0
260 y2(4) = 1.0
261
262 z2(1) = 0.0
263 z2(2) = 0.0
264 z2(3) = 0.0
265 z2(4) = 0.0
266
267 c Quad #2
268 x2(5) = 1.0
269 x2(6) = 2.0
270 x2(7) = 2.0
271 x2(8) = 1.0
272
273 y2(5) = 0.0
274 y2(6) = 0.0
275 y2(7) = 1.0
276 y2(8) = 1.0
277
278 z2(5) = 0.0
279 z2(6) = 0.0
280 z2(7) = 0.0
281 z2(8) = 0.0
282
283 c Hex #1
284 x2(9) = 0.0
285 x2(10) = 10.0
286 x2(11) = 10.0
287 x2(12) = 1.0
288 x2(13) = 1.0
289 x2(14) = 10.0
290 x2(15) = 10.0
291 x2(16) = 1.0
292
293 y2(9) = 0.0
294 y2(10) = 0.0
295 y2(11) = 0.0
296 y2(12) = 0.0
297 y2(13) = 10.0
298 y2(14) = 10.0
299 y2(15) = 10.0
300 y2(16) = 10.0
301
302 z2(9) = 0.0
303 z2(10) = 0.0
304 z2(11) =-10.0
305 z2(12) =-10.0
306 z2(13) = 0.0
307 z2(14) = 0.0
308 z2(15) =-10.0
309 z2(16) =-10.0
310
311 c Tetra #1
312 x2(17) = 0.0
313 x2(18) = 1.0
314 x2(19) = 10.0
315 x2(20) = 7.0
316
317 y2(17) = 0.0
318 y2(18) = 0.0
319 y2(19) = 0.0
320 y2(20) = 5.0
321
322 z2(17) = 0.0
323 z2(18) = 5.0
324 z2(19) = 2.0
325 z2(20) = 3.0
326
327 c Wedge #1
328 x2(21) = 3.0
329 x2(22) = 6.0
330 x2(23) = 0.0
331 x2(24) = 3.0
332 x2(25) = 6.0
333 x2(26) = 0.0
334
335 y2(21) = 0.0
336 y2(22) = 0.0
337 y2(23) = 0.0
338 y2(24) = 2.0
339 y2(25) = 2.0
340 y2(26) = 2.0
341
342 z2(21) = 6.0
343 z2(22) = 0.0
344 z2(23) = 0.0
345 z2(24) = 6.0
346 z2(25) = 2.0
347 z2(26) = 0.0
348
349
350 call expcor (exoid2, x2, y2, z2, ierr)
351 write (iout, '("after expcor (2), error = ", i4)' ) ierr
352
353 coord_names(1) = "xcoor"
354 coord_names(2) = "ycoor"
355 coord_names(3) = "zcoor"
356
357 call expcon (exoid, coord_names, ierr)
358 write (iout, '("after expcon, error = ", i4)' ) ierr
359
360 coord_names2(1) = "xcoor"
361 coord_names2(2) = "ycoor"
362 coord_names2(3) = "zcoor"
363
364 call expcon (exoid2, coord_names2, ierr)
365 write (iout, '("after expcon (2), error = ", i4)' ) ierr
366
367
368 c
369 c write element order map
370 c
371
372 do 10 i = 1, num_elem
373 elem_map(i) = i
374 10 continue
375
376 call expmap (exoid, elem_map, ierr)
377 write (iout, '("after expmap, error = ", i4)' ) ierr
378
379 do 12 i = 1, num_elem2
380 elem_map2(i) = i
381 12 continue
382
383 call expmap (exoid2, elem_map2, ierr)
384 write (iout, '("after expmap (2), error = ", i4)' ) ierr
385
386 c
387 c write element block parameters
388 c
389
390 num_elem_in_block(1) = 1
391 num_elem_in_block(2) = 1
392 num_elem_in_block(3) = 1
393 num_elem_in_block(4) = 1
394 num_elem_in_block(5) = 1
395
396 num_nodes_per_elem(1) = 4
397 num_nodes_per_elem(2) = 4
398 num_nodes_per_elem(3) = 8
399 num_nodes_per_elem(4) = 4
400 num_nodes_per_elem(5) = 6
401
402 ebids(1) = 10
403 ebids(2) = 11
404 ebids(3) = 12
405 ebids(4) = 13
406 ebids(5) = 14
407
408 numattr(1) = 1
409 numattr(2) = 1
410 numattr(3) = 1
411 numattr(4) = 1
412 numattr(5) = 1
413
414 cname = "quad"
415
416 call expelb (exoid,ebids(1),cname,num_elem_in_block(1),
417 1 num_nodes_per_elem(1),numattr(1),ierr)
418 write (iout, '("after expelb, error = ", i4)' ) ierr
419
420 call expelb (exoid,ebids(2),cname,num_elem_in_block(2),
421 1 num_nodes_per_elem(2),numattr(2),ierr)
422 write (iout, '("after expelb, error = ", i4)' ) ierr
423
424 cname = "hex"
425 call expelb (exoid,ebids(3),cname,num_elem_in_block(3),
426 1 num_nodes_per_elem(3),numattr(3),ierr)
427 write (iout, '("after expelb, error = ", i4)' ) ierr
428
429 cname = "tetra"
430 call expelb (exoid,ebids(4),cname,num_elem_in_block(4),
431 1 num_nodes_per_elem(4),numattr(4),ierr)
432 write (iout, '("after expelb, error = ", i4)' ) ierr
433
434 cname = "wedge"
435 call expelb (exoid,ebids(5),cname,num_elem_in_block(5),
436 1 num_nodes_per_elem(5),numattr(5),ierr)
437 write (iout, '("after expelb, error = ", i4)' ) ierr
438
439 num_elem_in_block2(1) = 1
440 num_elem_in_block2(2) = 1
441 num_elem_in_block2(3) = 1
442 num_elem_in_block2(4) = 1
443 num_elem_in_block2(5) = 1
444
445 num_nodes_per_elem2(1) = 4
446 num_nodes_per_elem2(2) = 4
447 num_nodes_per_elem2(3) = 8
448 num_nodes_per_elem2(4) = 4
449 num_nodes_per_elem2(5) = 6
450
451 ebids2(1) = 10
452 ebids2(2) = 11
453 ebids2(3) = 12
454 ebids2(4) = 13
455 ebids2(5) = 14
456
457 numattr2(1) = 1
458 numattr2(2) = 1
459 numattr2(3) = 1
460 numattr2(4) = 1
461 numattr2(5) = 1
462
463 cname2 = "quad"
464
465 call expelb(exoid2,ebids2(1),cname2,num_elem_in_block2(1),
466 1 num_nodes_per_elem2(1),numattr2(1),ierr)
467 write (iout, '("after expelb (2), error = ", i4)' ) ierr
468
469 call expelb(exoid2,ebids2(2),cname2,num_elem_in_block2(2),
470 1 num_nodes_per_elem2(2),numattr2(2),ierr)
471 write (iout, '("after expelb (2), error = ", i4)' ) ierr
472
473 cname2 = "hex"
474 call expelb(exoid2,ebids2(3),cname2,num_elem_in_block2(3),
475 1 num_nodes_per_elem(3),numattr(3),ierr)
476 write (iout, '("after expelb (2), error = ", i4)' ) ierr
477
478 cname2 = "tetra"
479 call expelb(exoid2,ebids2(4),cname2,num_elem_in_block2(4),
480 1 num_nodes_per_elem2(4),numattr2(4),ierr)
481 write (iout, '("after expelb (2), error = ", i4)' ) ierr
482
483 cname2 = "wedge"
484 call expelb(exoid2,ebids2(5),cname2,num_elem_in_block2(5),
485 1 num_nodes_per_elem2(5),numattr2(5),ierr)
486 write (iout, '("after expelb (2), error = ", i4)' ) ierr
487
488
489 c write element block properties
490
491 prop_names(1) = "MATL"
492 prop_names(2) = "DENSITY"
493 call exppn(exoid,exeblk,2,prop_names,ierr)
494 write (iout, '("after exppn, error = ", i4)' ) ierr
495
496 call expp(exoid, exeblk, ebids(1), "MATL", 10, ierr)
497 write (iout, '("after expp, error = ", i4)' ) ierr
498 call expp(exoid, exeblk, ebids(2), "MATL", 20, ierr)
499 write (iout, '("after expp, error = ", i4)' ) ierr
500 call expp(exoid, exeblk, ebids(3), "MATL", 30, ierr)
501 write (iout, '("after expp, error = ", i4)' ) ierr
502 call expp(exoid, exeblk, ebids(4), "MATL", 40, ierr)
503 write (iout, '("after expp, error = ", i4)' ) ierr
504 call expp(exoid, exeblk, ebids(5), "MATL", 50, ierr)
505 write (iout, '("after expp, error = ", i4)' ) ierr
506
507 call exppn(exoid2,exeblk,2,prop_names,ierr)
508 write (iout, '("after exppn (2), error = ", i4)' ) ierr
509
510 call expp(exoid2, exeblk, ebids(1), "MATL", 100, ierr)
511 write (iout, '("after expp (2), error = ", i4)' ) ierr
512 call expp(exoid2, exeblk, ebids(2), "MATL", 200, ierr)
513 write (iout, '("after expp (2), error = ", i4)' ) ierr
514 call expp(exoid2, exeblk, ebids(3), "MATL", 300, ierr)
515 write (iout, '("after expp (2), error = ", i4)' ) ierr
516 call expp(exoid2, exeblk, ebids(4), "MATL", 400, ierr)
517 write (iout, '("after expp (2), error = ", i4)' ) ierr
518 call expp(exoid2, exeblk, ebids(5), "MATL", 500, ierr)
519 write (iout, '("after expp (2), error = ", i4)' ) ierr
520
521
522 c
523 c write element connectivity
524 c
525
526 connect(1) = 1
527 connect(2) = 2
528 connect(3) = 3
529 connect(4) = 4
530
531 call expelc (exoid, ebids(1), connect, ierr)
532 write (iout, '("after expelc, error = ", i4)' ) ierr
533
534 connect(1) = 5
535 connect(2) = 6
536 connect(3) = 7
537 connect(4) = 8
538
539 call expelc (exoid, ebids(2), connect, ierr)
540 write (iout, '("after expelc, error = ", i4)' ) ierr
541
542 connect(1) = 9
543 connect(2) = 10
544 connect(3) = 11
545 connect(4) = 12
546 connect(5) = 13
547 connect(6) = 14
548 connect(7) = 15
549 connect(8) = 16
550
551 call expelc (exoid, ebids(3), connect, ierr)
552 write (iout, '("after expelc, error = ", i4)' ) ierr
553
554 connect(1) = 17
555 connect(2) = 18
556 connect(3) = 19
557 connect(4) = 20
558
559 call expelc (exoid, ebids(4), connect, ierr)
560 write (iout, '("after expelc, error = ", i4)' ) ierr
561
562 connect(1) = 21
563 connect(2) = 22
564 connect(3) = 23
565 connect(4) = 24
566 connect(5) = 25
567 connect(6) = 26
568
569 call expelc (exoid, ebids(5), connect, ierr)
570 write (iout, '("after expelc, error = ", i4)' ) ierr
571
572 connect2(1) = 1
573 connect2(2) = 2
574 connect2(3) = 3
575 connect2(4) = 4
576
577 call expelc (exoid2, ebids2(1), connect2, ierr)
578 write (iout, '("after expelc (2), error = ", i4)' ) ierr
579
580 connect2(1) = 5
581 connect2(2) = 6
582 connect2(3) = 7
583 connect2(4) = 8
584
585 call expelc (exoid2, ebids2(2), connect2, ierr)
586 write (iout, '("after expelc (2), error = ", i4)' ) ierr
587
588 connect2(1) = 9
589 connect2(2) = 10
590 connect2(3) = 11
591 connect2(4) = 12
592 connect2(5) = 13
593 connect2(6) = 14
594 connect2(7) = 15
595 connect2(8) = 16
596
597 call expelc (exoid2, ebids2(3), connect2, ierr)
598 write (iout, '("after expelc (2), error = ", i4)' ) ierr
599
600 connect2(1) = 17
601 connect2(2) = 18
602 connect2(3) = 19
603 connect2(4) = 20
604
605 call expelc (exoid2, ebids2(4), connect2, ierr)
606 write (iout, '("after expelc (2), error = ", i4)' ) ierr
607
608 connect2(1) = 21
609 connect2(2) = 22
610 connect2(3) = 23
611 connect2(4) = 24
612 connect2(5) = 25
613 connect2(6) = 26
614
615 call expelc (exoid2, ebids2(5), connect2, ierr)
616 write (iout, '("after expelc (2), error = ", i4)' ) ierr
617
618 c
619 c write element block attributes
620 c
621
622 attrib(1) = 3.14159
623 call expeat (exoid, ebids(1), attrib, ierr)
624 write (iout, '("after expeat, error = ", i4)' ) ierr
625
626 attrib(1) = 6.14159
627 call expeat (exoid, ebids(2), attrib, ierr)
628 write (iout, '("after expeat, error = ", i4)' ) ierr
629
630 call expeat (exoid, ebids(3), attrib, ierr)
631 write (iout, '("after expeat, error = ", i4)' ) ierr
632
633 call expeat (exoid, ebids(4), attrib, ierr)
634 write (iout, '("after expeat, error = ", i4)' ) ierr
635
636 call expeat (exoid, ebids(5), attrib, ierr)
637 write (iout, '("after expeat, error = ", i4)' ) ierr
638
639
640 attrib2(1) = 3.
641 call expeat (exoid2, ebids2(1), attrib2, ierr)
642 write (iout, '("after expeat (2), error = ", i4)' ) ierr
643
644 attrib2(1) = 6.
645 call expeat (exoid2, ebids2(2), attrib2, ierr)
646 write (iout, '("after expeat (2), error = ", i4)' ) ierr
647
648 call expeat (exoid2, ebids2(3), attrib2, ierr)
649 write (iout, '("after expeat (2), error = ", i4)' ) ierr
650
651 call expeat (exoid2, ebids2(4), attrib2, ierr)
652 write (iout, '("after expeat (2), error = ", i4)' ) ierr
653
654 call expeat (exoid2, ebids(5), attrib2, ierr)
655 write (iout, '("after expeat (2), error = ", i4)' ) ierr
656
657
658 c
659 c write individual node sets
660 c
661
662 call expnp (exoid, 20, 5, 5, ierr)
663 write (iout, '("after expnp, error = ", i4)' ) ierr
664
665 node_list(1) = 100
666 node_list(2) = 101
667 node_list(3) = 102
668 node_list(4) = 103
669 node_list(5) = 104
670
671 dist_fact(1) = 1.0
672 dist_fact(2) = 2.0
673 dist_fact(3) = 3.0
674 dist_fact(4) = 4.0
675 dist_fact(5) = 5.0
676
677 call expns (exoid, 20, node_list, ierr)
678 write (iout, '("after expns, error = ", i4)' ) ierr
679 call expnsd (exoid, 20, dist_fact, ierr)
680 write (iout, '("after expnsd, error = ", i4)' ) ierr
681
682 call expnp (exoid, 21, 3, 3, ierr)
683 write (iout, '("after expnp, error = ", i4)' ) ierr
684
685 node_list(1) = 200
686 node_list(2) = 201
687 node_list(3) = 202
688
689 dist_fact(1) = 1.1
690 dist_fact(2) = 2.1
691 dist_fact(3) = 3.1
692
693 call expns (exoid, 21, node_list, ierr)
694 write (iout, '("after expns, error = ", i4)' ) ierr
695 call expnsd (exoid, 21, dist_fact, ierr)
696 write (iout, '("after expnsd, error = ", i4)' ) ierr
697
698 prop_names(1) = "FACE"
699 call expp(exoid, exnset, 20, prop_names(1), 4, ierr)
700 write (iout, '("after expp, error = ", i4)' ) ierr
701
702 call expp(exoid, exnset, 21, prop_names(1), 5, ierr)
703 write (iout, '("after expp, error = ", i4)' ) ierr
704
705 prop_array(1) = 1000
706 prop_array(2) = 2000
707
708 prop_names(1) = "VELOCITY"
709 call exppa(exoid, exnset, prop_names(1), prop_array, ierr)
710 write (iout, '("after exppa, error = ", i4)' ) ierr
711
712 C**** file 2
713
714 call expnp (exoid2, 20, 5, 5, ierr)
715 write (iout, '("after expnp (2), error = ", i4)' ) ierr
716
717 node_list2(1) = 100
718 node_list2(2) = 101
719 node_list2(3) = 102
720 node_list2(4) = 103
721 node_list2(5) = 104
722
723 dist_fact2(1) = 1.0
724 dist_fact2(2) = 2.0
725 dist_fact2(3) = 3.0
726 dist_fact2(4) = 4.0
727 dist_fact2(5) = 5.0
728
729 call expns (exoid2, 20, node_list2, ierr)
730 write (iout, '("after expns (2), error = ", i4)' ) ierr
731 call expnsd (exoid2, 20, dist_fact2, ierr)
732 write (iout, '("after expnsd (2), error = ", i4)' ) ierr
733
734 call expnp (exoid2, 21, 3, 3, ierr)
735 write (iout, '("after expnp (2), error = ", i4)' ) ierr
736
737 node_list2(1) = 200
738 node_list2(2) = 201
739 node_list2(3) = 202
740
741 dist_fact2(1) = 1.1
742 dist_fact2(2) = 2.1
743 dist_fact2(3) = 3.1
744
745 call expns (exoid2, 21, node_list2, ierr)
746 write (iout, '("after expns (2), error = ", i4)' ) ierr
747 call expnsd (exoid2, 21, dist_fact2, ierr)
748 write (iout, '("after expnsd (2), error = ", i4)' ) ierr
749
750 c
751 c write concatenated node sets; this produces the same information as
752 c the above code which writes individual node sets
753 c
754
755 ids(1) = 20
756 ids(2) = 21
757
758 num_nodes_per_set(1) = 5
759 num_nodes_per_set(2) = 3
760
761 node_ind(1) = 1
762 node_ind(2) = 6
763
764 node_list(1) = 100
765 node_list(2) = 101
766 node_list(3) = 102
767 node_list(4) = 103
768 node_list(5) = 104
769 node_list(6) = 200
770 node_list(7) = 201
771 node_list(8) = 202
772
773 dist_fact(1) = 1.0
774 dist_fact(2) = 2.0
775 dist_fact(3) = 3.0
776 dist_fact(4) = 4.0
777 dist_fact(5) = 5.0
778 dist_fact(6) = 1.1
779 dist_fact(7) = 2.1
780 dist_fact(8) = 3.1
781
782 c call expcns (exoid, ids, num_nodes_per_set, node_ind, node_list,
783 c 1 dist_fact, ierr)
784 c write (iout, '("after expcns, error = ", i4)' ) ierr
785 c
786
787 prop_names(1) = "FACE"
788 call expp(exoid2, exnset, 20, prop_names(1), 4, ierr)
789 write (iout, '("after expp (2), error = ", i4)' ) ierr
790
791 prop_names(1) = "FACE"
792 call expp(exoid2, exnset, 21, prop_names(1), 5, ierr)
793 write (iout, '("after expp (2), error = ", i4)' ) ierr
794
795 prop_array(1) = 1000
796 prop_array(2) = 2000
797
798 prop_names(1) = "VELOCITY"
799 call exppa(exoid2, exnset, prop_names(1), prop_array, ierr)
800 write (iout, '("after exppa (2), error = ", i4)' ) ierr
801
802 c write individual side sets
803 c
804
805 c side set #1 - quad
806
807 elem_list(1) = 2
808 elem_list(2) = 2
809
810 side_list(1) = 4
811 side_list(2) = 2
812
813 dist_fact(1) = 30.0
814 dist_fact(2) = 30.1
815 dist_fact(3) = 30.2
816 dist_fact(4) = 30.3
817
818 call expsp (exoid, 30, 2, 4, ierr)
819 write (iout, '("after expsp, error = ", i4)' ) ierr
820
821 call expss (exoid, 30, elem_list, side_list, ierr)
822 write (iout, '("after expss, error = ", i4)' ) ierr
823
824 call expssd (exoid, 30, dist_fact, ierr)
825 write (iout, '("after expssd, error = ", i4)' ) ierr
826
827 c side set #2 - quad, spanning 2 elements
828
829 elem_list(1) = 1
830 elem_list(2) = 2
831
832 side_list(1) = 2
833 side_list(2) = 3
834
835 dist_fact(1) = 31.0
836 dist_fact(2) = 31.1
837 dist_fact(3) = 31.2
838 dist_fact(4) = 31.3
839
840 call expsp (exoid, 31, 2, 4, ierr)
841 write (iout, '("after expsp, error = ", i3)' ) ierr
842
843 call expss (exoid, 31, elem_list, side_list, ierr)
844 write (iout, '("after expss, error = ", i3)' ) ierr
845
846 call expssd (exoid, 31, dist_fact, ierr)
847 write (iout, '("after expssd, error = ", i3)' ) ierr
848
849 c side set #3 - hex
850
851 elem_list(1) = 3
852 elem_list(2) = 3
853 elem_list(3) = 3
854 elem_list(4) = 3
855 elem_list(5) = 3
856 elem_list(6) = 3
857 elem_list(7) = 3
858
859 side_list(1) = 5
860 side_list(2) = 3
861 side_list(3) = 3
862 side_list(4) = 2
863 side_list(5) = 4
864 side_list(6) = 1
865 side_list(7) = 6
866
867 call expsp (exoid, 32, 7, 0, ierr)
868 write (iout, '("after expsp, error = ", i4)' ) ierr
869
870 call expss (exoid, 32, elem_list, side_list, ierr)
871 write (iout, '("after expss, error = ", i4)' ) ierr
872
873 c side set #4 - tetras
874
875 elem_list(1) = 4
876 elem_list(2) = 4
877 elem_list(3) = 4
878 elem_list(4) = 4
879
880 side_list(1) = 1
881 side_list(2) = 2
882 side_list(3) = 3
883 side_list(4) = 4
884
885 call expsp (exoid, 33, 4, 0, ierr)
886 write (iout, '("after expsp, error = ", i4)' ) ierr
887
888 call expss (exoid, 33, elem_list, side_list, ierr)
889 write (iout, '("after expss, error = ", i4)' ) ierr
890
891 c side set #5 - wedges
892
893 elem_list(1) = 5
894 elem_list(2) = 5
895 elem_list(3) = 5
896 elem_list(4) = 5
897 elem_list(5) = 5
898
899 side_list(1) = 1
900 side_list(2) = 2
901 side_list(3) = 3
902 side_list(4) = 4
903 side_list(5) = 5
904
905 call expsp (exoid, 34, 5, 0, ierr)
906 write (iout, '("after expsp, error = ", i4)' ) ierr
907
908 call expss (exoid, 34, elem_list, side_list, ierr)
909 write (iout, '("after expss, error = ", i4)' ) ierr
910
911
912 c side set #1 - quad
913
914 elem_list2(1) = 2
915 elem_list2(2) = 2
916
917 side_list2(1) = 4
918 side_list2(2) = 2
919
920 dist_fact2(1) = 30.0
921 dist_fact2(2) = 30.1
922 dist_fact2(3) = 30.2
923 dist_fact2(4) = 30.3
924
925 call expsp (exoid2, 30, 2, 4, ierr)
926 write (iout, '("after expsp (2), error = ", i4)' ) ierr
927
928 call expss (exoid2, 30, elem_list2, side_list2, ierr)
929 write (iout, '("after expss (2), error = ", i4)' ) ierr
930
931 call expssd (exoid2, 30, dist_fact2, ierr)
932 write (iout, '("after expssd (2), error = ", i4)' ) ierr
933
934 c side set #2 - quad, spanning 2 elements
935
936 elem_list2(1) = 1
937 elem_list2(2) = 2
938
939 side_list2(1) = 2
940 side_list2(2) = 3
941
942 dist_fact2(1) = 31.0
943 dist_fact2(2) = 31.1
944 dist_fact2(3) = 31.2
945 dist_fact2(4) = 31.3
946
947 call expsp (exoid2, 31, 2, 4, ierr)
948 write (iout, '("after expsp (2), error = ", i3)' ) ierr
949
950 call expss (exoid2, 31, elem_list2, side_list2, ierr)
951 write (iout, '("after expss (2), error = ", i3)' ) ierr
952
953 call expssd (exoid2, 31, dist_fact2, ierr)
954 write (iout, '("after expssd (2), error = ", i3)' ) ierr
955
956 c side set #3 - hex
957
958 elem_list2(1) = 3
959 elem_list2(2) = 3
960 elem_list2(3) = 3
961 elem_list2(4) = 3
962 elem_list2(5) = 3
963 elem_list2(6) = 3
964 elem_list2(7) = 3
965
966 side_list2(1) = 5
967 side_list2(2) = 3
968 side_list2(3) = 3
969 side_list2(4) = 2
970 side_list2(5) = 4
971 side_list2(6) = 1
972 side_list2(7) = 6
973
974 call expsp (exoid2, 32, 7, 0, ierr)
975 write (iout, '("after expsp (2), error = ", i4)' ) ierr
976
977 call expss (exoid2, 32, elem_list2, side_list2, ierr)
978 write (iout, '("after expss (2), error = ", i4)' ) ierr
979
980 c side set #4 - tetras
981
982 elem_list2(1) = 4
983 elem_list2(2) = 4
984 elem_list2(3) = 4
985 elem_list2(4) = 4
986
987 side_list2(1) = 1
988 side_list2(2) = 2
989 side_list2(3) = 3
990 side_list2(4) = 4
991
992 call expsp (exoid2, 33, 4, 0, ierr)
993 write (iout, '("after expsp (2), error = ", i4)' ) ierr
994
995 call expss (exoid2, 33, elem_list2, side_list2, ierr)
996 write (iout, '("after expss (2), error = ", i4)' ) ierr
997
998 c side set #5 - wedges
999
1000 elem_list2(1) = 5
1001 elem_list2(2) = 5
1002 elem_list2(3) = 5
1003 elem_list2(4) = 5
1004 elem_list2(5) = 5
1005
1006 side_list2(1) = 1
1007 side_list2(2) = 2
1008 side_list2(3) = 3
1009 side_list2(4) = 4
1010 side_list2(5) = 5
1011
1012 call expsp (exoid2, 34, 5, 0, ierr)
1013 write (iout, '("after expsp (2), error = ", i4)' ) ierr
1014
1015 call expss (exoid2, 34, elem_list2, side_list2, ierr)
1016 write (iout, '("after expss (2), error = ", i4)' ) ierr
1017
1018 c
1019 c write concatenated side sets; this produces the same information as
1020 c the above code which writes individual side sets
1021 c
1022 ids(1) = 30
1023 ids(2) = 31
1024 ids(3) = 32
1025 ids(4) = 33
1026 ids(5) = 34
1027
1028 c side set #1
1029 node_list(1) = 8
1030 node_list(2) = 5
1031 node_list(3) = 6
1032 node_list(4) = 7
1033
1034 c side set #2
1035 node_list(5) = 2
1036 node_list(6) = 3
1037 node_list(7) = 7
1038 node_list(8) = 8
1039
1040 c side set #3
1041 node_list(9) = 9
1042 node_list(10) = 12
1043 node_list(11) = 11
1044 node_list(12) = 10
1045
1046 node_list(13) = 11
1047 node_list(14) = 12
1048 node_list(15) = 16
1049 node_list(16) = 15
1050
1051 node_list(17) = 16
1052 node_list(18) = 15
1053 node_list(19) = 11
1054 node_list(20) = 12
1055
1056 node_list(21) = 10
1057 node_list(22) = 11
1058 node_list(23) = 15
1059 node_list(24) = 14
1060
1061 node_list(25) = 13
1062 node_list(26) = 16
1063 node_list(27) = 12
1064 node_list(28) = 9
1065
1066 node_list(29) = 14
1067 node_list(30) = 13
1068 node_list(31) = 9
1069 node_list(32) = 10
1070
1071 node_list(33) = 16
1072 node_list(34) = 13
1073 node_list(35) = 14
1074 node_list(36) = 15
1075
1076 c side set #4
1077 node_list(37) = 17
1078 node_list(38) = 18
1079 node_list(39) = 20
1080
1081 node_list(40) = 18
1082 node_list(41) = 19
1083 node_list(42) = 20
1084
1085 node_list(43) = 20
1086 node_list(44) = 19
1087 node_list(45) = 17
1088
1089 node_list(46) = 19
1090 node_list(47) = 18
1091 node_list(48) = 17
1092
1093 c side set #5
1094 node_list(49) = 25
1095 node_list(50) = 24
1096 node_list(51) = 21
1097 node_list(52) = 22
1098
1099 node_list(53) = 26
1100 node_list(54) = 25
1101 node_list(55) = 22
1102 node_list(56) = 23
1103
1104 node_list(57) = 26
1105 node_list(58) = 23
1106 node_list(59) = 21
1107 node_list(60) = 24
1108
1109 node_list(61) = 23
1110 node_list(62) = 22
1111 node_list(63) = 21
1112
1113 node_list(64) = 24
1114 node_list(65) = 25
1115 node_list(66) = 26
1116
1117 num_elem_per_set(1) = 2
1118 num_elem_per_set(2) = 2
1119 num_elem_per_set(3) = 7
1120 num_elem_per_set(4) = 4
1121 num_elem_per_set(5) = 5
1122
1123 num_nodes_per_set(1) = 4
1124 num_nodes_per_set(2) = 4
1125 num_nodes_per_set(3) = 28
1126 num_nodes_per_set(4) = 12
1127 num_nodes_per_set(5) = 20
1128
1129 elem_ind(1) = 1
1130 elem_ind(2) = 3
1131 elem_ind(3) = 5
1132 elem_ind(4) = 12
1133 elem_ind(5) = 16
1134
1135 node_ind(1) = 1
1136 node_ind(2) = 5
1137 node_ind(3) = 9
1138 node_ind(4) = 37
1139 node_ind(5) = 48
1140
1141 elem_list(1) = 3
1142 elem_list(2) = 3
1143 elem_list(3) = 1
1144 elem_list(4) = 3
1145 elem_list(5) = 4
1146 elem_list(6) = 4
1147 elem_list(7) = 4
1148 elem_list(8) = 4
1149 elem_list(9) = 4
1150 elem_list(10) = 4
1151 elem_list(11) = 4
1152 elem_list(12) = 5
1153 elem_list(13) = 5
1154 elem_list(14) = 5
1155 elem_list(15) = 5
1156 elem_list(16) = 6
1157 elem_list(17) = 6
1158 elem_list(18) = 6
1159 elem_list(19) = 6
1160 elem_list(20) = 6
1161
1162 c side_list(1) = 1
1163 c side_list(2) = 2
1164 c side_list(3) = 3
1165 c side_list(4) = 4
1166
1167
1168 c call excn2s(exoid, num_elem_per_set, num_nodes_per_set, elem_ind,
1169 c 1 node_ind, elem_list, node_list, side_list, ierr)
1170 c write (iout, '("after excn2s, error = ", i4)' ) ierr
1171
1172 num_df_per_set(1) = 4
1173 num_df_per_set(2) = 4
1174 num_df_per_set(3) = 0
1175 num_df_per_set(4) = 0
1176 num_df_per_set(5) = 0
1177
1178 df_ind(1) = 1
1179 df_ind(2) = 5
1180
1181
1182 dist_fact(1) = 30.0
1183 dist_fact(2) = 30.1
1184 dist_fact(3) = 30.2
1185 dist_fact(4) = 30.3
1186 dist_fact(5) = 31.0
1187 dist_fact(6) = 31.1
1188 dist_fact(7) = 31.2
1189 dist_fact(8) = 31.3
1190
1191 c call expcss (exoid, ids, num_elem_per_set, num_df_per_set,
1192 c 1 elem_ind, df_ind, elem_list, side_list, dist_fact,
1193 c 2 ierr)
1194 c write (iout, '("after expcss, error = ", i4)' ) ierr
1195
1196 c call expcss (exoid2, ids, num_elem_per_set, num_df_per_set,
1197 c 1 elem_ind, df_ind, elem_list, side_list, dist_fact,
1198 c 2 ierr)
1199 c write (iout, '("after expcss (2), error = ", i4)' ) ierr
1200
1201 prop_names(1) = "COLOR"
1202 call expp(exoid, exsset, 30, prop_names(1), 100, ierr)
1203 write (iout, '("after expp, error = ", i4)' ) ierr
1204
1205 call expp(exoid, exsset, 31, prop_names(1), 101, ierr)
1206 write (iout, '("after expp, error = ", i4)' ) ierr
1207
1208
1209 prop_names(1) = "COLOR"
1210 call expp(exoid2, exsset, 30, prop_names(1), 100, ierr)
1211 write (iout, '("after expp (2), error = ", i4)' ) ierr
1212
1213 call expp(exoid2, exsset, 31, prop_names(1), 101, ierr)
1214 write (iout, '("after expp (2), error = ", i4)' ) ierr
1215
1216
1217 c
1218 c write QA records
1219 c
1220
1221 num_qa_rec = 2
1222
1223 qa_record(1,1) = "TESTWT2 fortran version"
1224 qa_record(2,1) = "testwt2"
1225 qa_record(3,1) = "07/07/93"
1226 qa_record(4,1) = "15:41:33"
1227 qa_record(1,2) = "FASTQ"
1228 qa_record(2,2) = "fastq"
1229 qa_record(3,2) = "07/07/93"
1230 qa_record(4,2) = "16:41:33"
1231
1232 call expqa (exoid, num_qa_rec, qa_record, ierr)
1233 write (iout, '("after expqa, error = ", i4)' ) ierr
1234
1235 num_qa_rec2 = 2
1236
1237 qa_record2(1,1) = "TESTWT2 fortran version"
1238 qa_record2(2,1) = "testwt2"
1239 qa_record2(3,1) = "07/07/93"
1240 qa_record2(4,1) = "15:41:33"
1241 qa_record2(1,2) = "FASTQ"
1242 qa_record2(2,2) = "fastq"
1243 qa_record2(3,2) = "07/07/93"
1244 qa_record2(4,2) = "16:41:33"
1245
1246 call expqa (exoid2, num_qa_rec2, qa_record2, ierr)
1247 write (iout, '("after expqa (2), error = ", i4)' ) ierr
1248
1249
1250 c
1251 c write information records
1252 c
1253
1254 num_info = 3
1255
1256 inform(1) = "This is the first information record."
1257 inform(2) = "This is the second information record."
1258 inform(3) = "This is the third information record."
1259
1260 call expinf (exoid, num_info, inform, ierr)
1261 write (iout, '("after expinf, error = ", i4)' ) ierr
1262
1263 num_info2 = 3
1264
1265 inform2(1) = "This is the first information record."
1266 inform2(2) = "This is the second information record."
1267 inform2(3) = "This is the third information record."
1268
1269 call expinf (exoid2, num_info2, inform2, ierr)
1270 write (iout, '("after expinf (2), error = ", i4)' ) ierr
1271
1272
1273 c write results variables parameters and names
1274
1275 num_glo_vars = 1
1276
1277 var_names(1) = "glo_vars"
1278
1279 call expvp (exoid, "g", num_glo_vars, ierr)
1280 write (iout, '("after expvp, error = ", i4)' ) ierr
1281 call expvan (exoid, "g", num_glo_vars, var_names, ierr)
1282 write (iout, '("after expvan, error = ", i4)' ) ierr
1283
1284 num_glo_vars2 = 1
1285
1286 var_names2(1) = "glo_vars"
1287
1288 call expvp (exoid2, "g", num_glo_vars2, ierr)
1289 write (iout, '("after expvp (2), error = ", i4)' ) ierr
1290 call expvan (exoid2, "g", num_glo_vars2, var_names2, ierr)
1291 write (iout, '("after expvan (2), error = ", i4)' ) ierr
1292
1293
1294 num_nod_vars = 2
1295
1296 var_names(1) = "nod_var0"
1297 var_names(2) = "nod_var1"
1298
1299 call expvp (exoid, "n", num_nod_vars, ierr)
1300 write (iout, '("after expvp, error = ", i4)' ) ierr
1301 call expvan (exoid, "n", num_nod_vars, var_names, ierr)
1302 write (iout, '("after expvan, error = ", i4)' ) ierr
1303
1304 num_nod_vars2 = 2
1305
1306 var_names2(1) = "nod_var0"
1307 var_names2(2) = "nod_var1"
1308
1309 call expvp (exoid2, "n", num_nod_vars2, ierr)
1310 write (iout, '("after expvp (2), error = ", i4)' ) ierr
1311 call expvan (exoid2, "n", num_nod_vars2, var_names2, ierr)
1312 write (iout, '("after expvan (2), error = ", i4)' ) ierr
1313
1314
1315 num_ele_vars = 3
1316
1317 var_names(1) = "ele_var0"
1318 var_names(2) = "ele_var1"
1319 var_names(3) = "ele_var2"
1320
1321 call expvp (exoid, "e", num_ele_vars, ierr)
1322 write (iout, '("after expvp, error = ", i4)' ) ierr
1323 call expvan (exoid, "e", num_ele_vars, var_names, ierr)
1324 write (iout, '("after expvan, error = ", i4)' ) ierr
1325
1326 num_ele_vars2 = 3
1327
1328 var_names2(1) = "ele_var0"
1329 var_names2(2) = "ele_var1"
1330 var_names2(3) = "ele_var2"
1331
1332 call expvp (exoid2, "e", num_ele_vars2, ierr)
1333 write (iout, '("after expvp (2), error = ", i4)' ) ierr
1334 call expvan (exoid2, "e", num_ele_vars2, var_names2, ierr)
1335 write (iout, '("after expvan, error = ", i4)' ) ierr
1336
1337 c
1338 c write element variable truth table
1339 c
1340
1341 k = 0
1342
1343 do 30 i = 1,num_elem_blk
1344 do 20 j = 1,num_ele_vars
1345 truth_tab(j,i) = 1
1346 20 continue
1347 30 continue
1348
1349 call exgebi (exoid, ebids, ierr)
1350 write (iout, '("after exgebi, error = ", i4)' ) ierr
1351 call exgebi (exoid2, ebids2, ierr)
1352 write (iout, '("after exgebi (2), error = ", i4)' ) ierr
1353 call expvtt (exoid, num_elem_blk, num_ele_vars, truth_tab, ierr)
1354 write (iout, '("after expvtt, error = ", i4)' ) ierr
1355 call expvtt (exoid2, num_elem_blk, num_ele_vars, truth_tab, ierr)
1356 write (iout, '("after expvtt, error = ", i4)' ) ierr
1357
1358 c
1359 c for each time step, write the analysis results;
1360 c the code below fills the arrays glob_var_vals,
1361 c nodal_var_vals, and elem_var_vals with values for debugging purposes;
1362 c obviously the analysis code will populate these arrays
1363 c
1364
1365 whole_time_step = 1
1366 num_time_steps = 10
1367
1368 do 110 i = 1, num_time_steps
1369 time_value = real(i)/100
1370 time_value2 = real(i)/100
1371 c
1372 c write time value to regular file
1373 c
1374
1375 call exptim (exoid, whole_time_step, time_value, ierr)
1376 write (iout, '("after exptim, error = ", i4)' ) ierr
1377
1378 call exptim (exoid2, whole_time_step, time_value2, ierr)
1379 write (iout, '("after exptim (2), error = ", i4)' ) ierr
1380
1381 c
1382 c write global variables
1383 c
1384
1385 do 50 j = 1, num_glo_vars
1386 glob_var_vals(j) = real(j+1) * time_value
1387 50 continue
1388
1389 call expgv (exoid, whole_time_step, num_glo_vars,
1390 1 glob_var_vals, ierr)
1391 write (iout, '("after expgv, error = ", i4)' ) ierr
1392
1393 call expgv (exoid2, whole_time_step, num_glo_vars,
1394 1 glob_var_vals, ierr)
1395 write (iout, '("after expgv (2), error = ", i4)' ) ierr
1396
1397 c
1398 c write nodal variables
1399 c
1400
1401 do 70 k = 1, num_nod_vars
1402 do 60 j = 1, num_nodes
1403
1404 nodal_var_vals(j) = real(k) + (real(j) * time_value)
1405
1406 60 continue
1407
1408 call expnv (exoid, whole_time_step, k, num_nodes,
1409 1 nodal_var_vals, ierr)
1410 write (iout, '("after expnv, error = ", i4)' ) ierr
1411
1412 call expnv (exoid2, whole_time_step, k, num_nodes,
1413 1 nodal_var_vals, ierr)
1414 write (iout, '("after expnv (2), error = ", i4)' ) ierr
1415
1416 70 continue
1417
1418 c
1419 c write element variables
1420 c
1421
1422 do 100 k = 1, num_ele_vars
1423 do 90 j = 1, num_elem_blk
1424 do 80 m = 1, num_elem_in_block(j)
1425
1426 elem_var_vals(m) = real(k+1) + real(j+1) +
1427 1 (real(m)*time_value)
1428
1429 80 continue
1430
1431 call expev (exoid, whole_time_step, k, ebids(j),
1432 1 num_elem_in_block(j), elem_var_vals, ierr)
1433 write (iout, '("after expev, error = ", i4)' ) ierr
1434 call expev (exoid2, whole_time_step, k, ebids(j),
1435 1 num_elem_in_block(j), elem_var_vals, ierr)
1436 write (iout, '("after expev (2), error = ", i4)' ) ierr
1437
1438 90 continue
1439 100 continue
1440
1441 whole_time_step = whole_time_step + 1
1442
1443 c
1444 c update the data file; this should be done at the end of every time
1445 c step to ensure that no data is lost if the analysis dies
1446 c
1447 call exupda (exoid, ierr)
1448 write (iout, '("after exupda, error = ", i4)' ) ierr
1449 call exupda (exoid2, ierr)
1450 write (iout, '("after exupda (2), error = ", i4)' ) ierr
1451
1452 110 continue
1453
1454 c
1455 c close the EXODUS files
1456 c
1457 call exclos (exoid, ierr)
1458 write (iout, '("after exclos, error = ", i4)' ) ierr
1459
1460 call exclos (exoid2, ierr)
1461 write (iout, '("after exclos (2), error = ", i4)' ) ierr
1462
1463 stop
1464 end
1465
expelb
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:783
expns
void expns(int *idexo, entity_id *node_set_id, void_int *node_set_node_list, int *ierr)
Definition: exo_jack.c:1529
expss
void expss(int *idexo, entity_id *side_set_id, void_int *side_set_elem_list, void_int *side_set_side_list, int *ierr)
Definition: exo_jack.c:1723
exppa
void exppa(int *idexo, int *obj_type, char *prop_name, void_int *values, int *ierr, int prop_namelen)
Definition: exo_jack.c:1464
expvan
void expvan(int *idexo, char *var_type, int *num_vars, char *var_names, int *ierr, int var_typelen, int var_nameslen)
Definition: exo_jack.c:1947
exptim
void exptim(int *idexo, int *time_step, real *time_value, int *ierr)
Definition: exo_jack.c:2327
exclos
void exclos(int *idexo, int *ierr)
Definition: exo_jack.c:234
exgebi
void exgebi(int *idexo, void_int *elem_blk_ids, int *ierr)
Definition: exo_jack.c:860
expelc
void expelc(int *idexo, entity_id *elem_blk_id, void_int *connect, int *ierr)
Definition: exo_jack.c:869
expp
void expp(int *idexo, int *obj_type, entity_id *obj_id, char *prop_name, entity_id *value, int *ierr, int prop_namelen)
Definition: exo_jack.c:1356
expnsd
void expnsd(int *idexo, entity_id *node_set_id, real *node_set_dist_fact, int *ierr)
Definition: exo_jack.c:1538
expcon
void expcon(int *idexo, char *coord_names, int *ierr, int coord_nameslen)
Definition: exo_jack.c:588
expnp
void expnp(int *idexo, entity_id *node_set_id, void_int *num_nodes_in_set, void_int *num_dist_in_set, int *ierr)
Definition: exo_jack.c:1500
expqa
void expqa(int *idexo, int *num_qa_records, char *qa_record, int *ierr, int qa_recordlen)
Definition: exo_jack.c:318
expsp
void expsp(int *idexo, entity_id *side_set_id, void_int *num_sides_in_set, void_int *num_df_in_set, int *ierr)
Definition: exo_jack.c:1685
expcor
void expcor(int *idexo, real *x_coor, real *y_coor, real *z_coor, int *ierr)
Definition: exo_jack.c:570
expvtt
void expvtt(int *idexo, int *num_elem_blk, int *num_elem_var, int *elem_var_tab, int *ierr)
Definition: exo_jack.c:2056
expeat
void expeat(int *idexo, entity_id *elem_blk_id, real *attrib, int *ierr)
Definition: exo_jack.c:909
real
#define real
Definition: exo_jack-windows.c:86
expini
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:246
expinf
void expinf(int *idexo, int *num_info, char *info, int *ierr, int infolen)
Definition: exo_jack.c:459
expnv
void expnv(int *idexo, int *time_step, int *nodal_var_index, void_int *num_nodes, real *nodal_var_vals, int *ierr)
Definition: exo_jack.c:2143
exupda
void exupda(int *idexo, int *ierr)
Definition: exo_jack.c:240
excre
int excre(char *path, int *clobmode, int *cpu_word_size, int *io_word_size, int *ierr, int pathlen)
Definition: exo_jack.c:182
expgv
void expgv(int *idexo, int *time_step, int *num_glob_vars, real *glob_var_vals, int *ierr)
Definition: exo_jack.c:2112
exppn
void exppn(int *idexo, int *obj_type, int *num_props, char *prop_names, int *ierr, int prop_nameslen)
Definition: exo_jack.c:1213
expssd
void expssd(int *idexo, entity_id *side_set_id, real *side_set_dist_fact, int *ierr)
Definition: exo_jack.c:1743
expev
void expev(int *idexo, int *time_step, int *elem_var_index, entity_id *elem_blk_id, void_int *num_elem_this_blk, real *elem_var_vals, int *ierr)
Definition: exo_jack.c:2198
expvp
void expvp(int *idexo, char *var_type, int *num_vars, int *ierr, int var_typelen)
Definition: exo_jack.c:1925
expmap
void expmap(int *idexo, void_int *elem_map, int *ierr)
Definition: exo_jack.c:710