Exodus 8.24
Loading...
Searching...
No Matches
/exodus_for/test/testrd1.f
1C Copyright(C) 1999-2020 National Technology & Engineering Solutions
2C of Sandia, LLC (NTESS). Under the terms of Contract DE-NA0003525 with
3C NTESS, the U.S. Government retains certain rights in this software.
4C
5C See packages/seacas/LICENSE for details
6
7 program testrd1
8
9c This is a test program for the Fortran binding of the EXODUS II
10c database read routines
11
12c 09/07/93 V.R. Yarberry - Modified for API 2.00
13 implicit none
14
15 include 'exodusII.inc'
16
17 integer iin, iout, ierr
18 integer exoid, num_dim, num_nodes, num_elem, num_elem_blk
19 integer num_node_sets
20 integer num_side_sets
21 integer i, j, k, elem_map(10), connect(10), node_list(100)
22 integer elem_list(100), side_list(100), ids(10), node_map(100)
23 integer num_elem_per_set(10), num_nodes_per_set(10)
24 integer num_df_per_set(10)
25 integer num_df_in_set, num_sides_in_set
26 integer df_ind(10),node_ind(10),elem_ind(10),num_qa_rec,num_info
27 integer num_glo_vars, num_nod_vars, num_ele_vars
28 integer truth_tab(3,7)
29 integer num_time_steps
30 integer num_elem_in_block(10), num_nodes_per_elem(10)
31 integer num_attr(10), node_ctr_list(10), node_ctr
32 integer num_nodes_in_set, num_elem_in_set
33 integer df_list_len, list_len, elem_list_len, node_list_len
34 integer node_num, time_step, var_index, beg_time, end_time
35 integer elem_num
36 integer cpu_ws,io_ws
37 integer num_props, prop_value, n_node_map, n_elem_map
38 integer ival
39
40 real time_value, time_values(100), var_values(100)
41 real x(100), y(100), z(100)
42 real attrib(100), dist_fact(100)
43 real vers
44
45 character*(MXSTLN) coord_names(3), qa_record(4,2), var_names(3)
46 character*(MXLNLN) inform(3), titl
47 character typ*(MXSTLN)
48 character*(MXSTLN) prop_names(3)
49 character*(MXSTLN) attrib_names(100)
50 data iin /5/, iout /6/
51
52c call exopts (EXVRBS, ierr)
53c write (iout, '(/"after exopts, error = ", i3)' ) ierr
54
55c open EXODUS II files
56
57 cpu_ws = 0
58 io_ws = 0
59
60 exoid = exopen("test.exo", exread, cpu_ws, io_ws, vers, ierr)
61 write (iout, '(/"after exopen, error = ",i3)')
62 1 ierr
63
64 write (iout, '("test.exo is an EXODUSII file; version ",
65 1 f4.2)') vers
66 write (iout, '(" I/O word size",i2)') io_ws
67
68c read database parameters
69
70 call exgini (exoid, titl, num_dim, num_nodes, num_elem,
71 1 num_elem_blk, num_node_sets, num_side_sets, ierr)
72 write (iout, '(/"after exgini, error = ", i3)' ) ierr
73
74 write (iout, '("database parameters:"/
75 1 "title = ", a81 /
76 2 "num_dim = ", i3 /
77 3 "num_nodes = ", i3 /
78 4 "num_elem = ", i3 /
79 5 "num_elem_blk = ", i3 /
80 6 "num_node_sets = ", i3 /
81 7 "num_side_sets = ", i3)')
82 8 titl,num_dim, num_nodes, num_elem,
83 9 num_elem_blk,num_node_sets, num_side_sets
84
85c read nodal coordinates values and names from database
86
87 call exgcor (exoid, x, y, z, ierr)
88 write (iout, '(/"after exgcor, error = ", i3)' ) ierr
89
90 write (iout, '("x coords = ")')
91 do 10 i = 1, num_nodes
92 write (iout, '(f5.1)') x(i)
9310 continue
94
95 write (iout, '("y coords = ")')
96 do 20 i = 1, num_nodes
97 write (iout, '(f5.1)') y(i)
9820 continue
99
100 if (num_dim .gt. 2) then
101 write (iout, '("z coords = ")')
102 do 22 i = 1, num_nodes
103 write (iout, '(f5.1)') z(i)
10422 continue
105 endif
106
107 call exgcon (exoid, coord_names, ierr)
108 write (iout, '(/"after exgcon, error = ", i3)' ) ierr
109
110 write (iout, '("x coord name = ", a9)') coord_names(1)
111 write (iout, '("y coord name = ", a9)') coord_names(2)
112
113c read map parameters
114
115 call exgmp (exoid, n_node_map, n_elem_map, ierr)
116 write (iout, '(/"after exgmp, error = ", i3)' ) ierr
117
118c read element maps
119
120 call exgpa (exoid, exemap, "ID", ids, ierr)
121 write (iout, '(/"after exgpa, error = ", i3)' ) ierr
122
123 do 26 j = 1,n_elem_map
124
125 call exgem (exoid, ids(j), elem_map, ierr)
126 write (iout, '(/"after exgem, error = ", i3)' ) ierr
127
128 write (iout, '(/"element map id = ", i3)' ) ids(j)
129
130 do 24 i = 1, num_elem
131 write (iout, '("elem_map(",i3,") = ", i3)') i, elem_map(i)
132C .. test reading partial element maps...
133 call exgpem(exoid, ids(j), i, 1, ival, ierr)
134 if (ival .ne. elem_map(i)) then
135 write (iout, '("bad value found for map ",
136 * " element ", i3)') i, elem_map(i)
137 end if
13824 continue
139
14026 continue
141
142c read element map properties
143
144 num_props = exinqi(exoid, exnemp)
145 write (iout,
146 1 '(/"There are ",i2," properties for each element map")')
147 2 num_props
148
149 call exgpn(exoid, exemap, prop_names, ierr)
150 write (iout, '("after exgpn, error = ", i3)' ) ierr
151
152 do 30 i = 1, num_props
153 do 28 j = 1, n_elem_map
154 call exgp(exoid, exemap,ids(j),prop_names(i),prop_value,ierr)
155 if (ierr .eq. 0) then
156 write( iout,
157 1 '("elem map ",i2," property(",i2,"): ",a," = ",i5)' )
158 2 j, i, prop_names(i), prop_value
159 else
160 write (iout, '(/"after exgp, error = ", i3)' ) ierr
161 endif
16228 continue
16330 continue
164
165c read node maps
166
167 call exgpa (exoid, exnmap, "ID", ids, ierr)
168 write (iout, '(/"after exgpa, error = ", i3)' ) ierr
169
170 do 34 j = 1,n_node_map
171
172 call exgnm (exoid, ids(j), node_map, ierr)
173 write (iout, '(/"after exgnm, error = ", i3)' ) ierr
174
175 write (iout, '(/"node map id = ", i3)' ) ids(j)
176
177 do 32 i = 1, num_nodes
178 write (iout, '("node_map(",i3,") = ", i3)') i, node_map(i)
17932 continue
180
18134 continue
182
183c read node map properties
184
185 num_props = exinqi(exoid, exnnmp)
186 write (iout,
187 1 '(/"There are ",i2," properties for each node map")')
188 2 num_props
189
190 call exgpn(exoid, exnmap, prop_names, ierr)
191 write (iout, '("after exgpn, error = ", i3)' ) ierr
192
193 do 38 i = 1, num_props
194 do 36 j = 1, n_node_map
195 call exgp(exoid, exnmap,ids(j),prop_names(i),prop_value,ierr)
196 if (ierr .eq. 0) then
197 write( iout,
198 1 '("node map ",i2," property(",i2,"): ",a," = ",i5)' )
199 2 j, i, prop_names(i), prop_value
200 else
201 write (iout, '(/"after exgp, error = ", i3)' ) ierr
202 endif
20336 continue
20438 continue
205
206c read element block parameters
207
208 call exgebi (exoid, ids, ierr)
209 write (iout, '(/"after exgebi, error = ", i3)' ) ierr
210
211 do 40 i = 1, num_elem_blk
212
213 call exgelb (exoid, ids(i), typ, num_elem_in_block(i),
214 1 num_nodes_per_elem(i), num_attr(i), ierr)
215 write (iout, '(/"after exgelb, error = ", i3)' ) ierr
216
217 write (iout, '("element block id = ", i2,/
218 1 "element type = ", a9,/
219 2 "num_elem_in_block = ", i2,/
220 3 "num_nodes_per_elem = ", i2,/
221 4 "num_attr = ", i2)')
222 5 ids(i), typ, num_elem_in_block(i),
223 6 num_nodes_per_elem(i), num_attr(i)
224
22540 continue
226
227c read element block properties
228
229 num_props = exinqi(exoid, exnebp)
230 write (iout,
231 1 '(/"There are ",i2," properties for each element block")')
232 2 num_props
233
234 call exgpn(exoid, exeblk, prop_names, ierr)
235 write (iout, '("after exgpn, error = ", i3)' ) ierr
236
237 do 47 i = 1, num_props
238 do 45 j = 1, num_elem_blk
239 call exgp(exoid, exeblk,ids(j),prop_names(i),prop_value,ierr)
240 if (ierr .eq. 0) then
241 write( iout,
242 1 '("elem block ",i2," property(",i2,"): ",a," = ",i5)' )
243 2 j, i, prop_names(i), prop_value
244 else
245 write (iout, '(/"after exgp, error = ", i3)' ) ierr
246 endif
24745 continue
24847 continue
249
250c read element connectivity
251
252 do 60 i = 1, num_elem_blk
253
254 call exgelc (exoid, ids(i), connect, ierr)
255 write (iout, '(/"after exgelc, error = ", i3)' ) ierr
256
257 write (iout, '("connect array for elem block ", i2)') ids(i)
258
259 do 50 j = 1, num_nodes_per_elem(i)
260 write (iout, '(i3)') connect(j)
26150 continue
262
26360 continue
264
265c read element block attributes
266
267 do 70 i = 1, num_elem_blk
268
269 call exgeat (exoid, ids(i), attrib, ierr)
270 write (iout, '(/"after exgeat, error = ", i3)' ) ierr
271
272 call exgean (exoid, ids(i), num_attr(i), attrib_names, ierr)
273 write (iout, '(/"after exgean, error = ", i3)' ) ierr
274
275 write (iout,
276 * '("element block ", i2, " has ",i2," attribute(s) and ",
277 * i2, " element(s):")')
278 1 ids(i), num_attr(i), num_elem_in_block(i)
279 do j=1, num_attr(i)
280 write (iout, 69) attrib_names(j),
281 * (attrib(k),k= j, num_attr(i)*num_elem_in_block(i),
282 * num_attr(i))
283 end do
284 69 format(a32," = ", 10(f6.4,2x))
28570 continue
286
287c read individual node sets
288
289 if (num_node_sets .gt. 0) then
290 call exgnsi (exoid, ids, ierr)
291 write (iout, '(/"after exgnsi, error = ", i3)' ) ierr
292 endif
293
294 do 100 i = 1, num_node_sets
295
296 call exgnp (exoid, ids(i), num_nodes_in_set,
297 1 num_df_in_set, ierr)
298 write (iout, '(/"after exgnp, error = ", i3)' ) ierr
299
300 write (iout, '(/"node set ", i2, " parameters: ",/
301 2 "num_nodes = ", i2)') ids(i), num_nodes_in_set
302
303 call exgns (exoid, ids(i), node_list, ierr)
304 write (iout, '(/"after exgns, error = ", i3)' ) ierr
305
306 if (num_df_in_set .gt. 0) then
307 call exgnsd (exoid, ids(i), dist_fact, ierr)
308 write (iout, '(/"after exgnsd, error = ", i3)' ) ierr
309 endif
310
311 write (iout, '(/"node list for node set ", i2)') ids(i)
312
313 do 80 j = 1, num_nodes_in_set
314 write (iout, '(i3)') node_list(j)
31580 continue
316
317 if (num_df_in_set .gt. 0) then
318 write (iout, '("dist factors for node set ", i2)') ids(i)
319 do 90 j = 1, num_nodes_in_set
320 write (iout, '(f5.2)') dist_fact(j)
32190 continue
322 else
323 write (iout, '("no dist factors for node set ", i2)') ids(i)
324 endif
325
326100 continue
327
328c read node set properties
329
330 num_props = exinqi(exoid, exnnsp)
331 write (iout,
332 1 '(/"There are ",i2," properties for each node set")')
333 2 num_props
334
335 call exgpn(exoid, exnset, prop_names, ierr)
336 write (iout, '("after exgpn, error = ", i3)' ) ierr
337
338 do 107 i = 1, num_props
339 do 105 j = 1, num_node_sets
340 call exgp(exoid,exnset,ids(j),prop_names(i),prop_value,ierr)
341 if (ierr .eq. 0) then
342 write( iout,
343 1 '("node set ",i2," property(",i2,"): ",a," = ",i5)' )
344 2 j, i, prop_names(i), prop_value
345 else
346 write (iout, '(/"after exgp, error = ", i3)' ) ierr
347 endif
348105 continue
349107 continue
350
351c read concatenated node sets; this produces the same information as
352c the above code which reads individual node sets
353
354 num_node_sets = exinqi(exoid, exnods)
355 if (num_node_sets .gt. 0) then
356 list_len = exinqi(exoid, exnsnl)
357 write(iout,'(/"after EXNSNL =",i3," exinq, error = ",i3)')
358 1 list_len,ierr
359
360 list_len = exinqi(exoid, exnsdf)
361 write(iout,'(/"after EXNSDF =",i3," exinq, error = ",i3)')
362 1 list_len,ierr
363
364 call exgcns (exoid, ids, num_nodes_per_set, num_df_per_set,
365 1 node_ind, df_ind, node_list, dist_fact, ierr)
366 write (iout, '(/"after exgcns, error = ", i3)' ) ierr
367
368 write (iout, '(/"concatenated node set info")')
369
370 write (iout, '("ids = ")')
371
372 do 110 i = 1, num_node_sets
373 write (iout, '(i3)') ids(i)
374110 continue
375
376 write (iout, '("num_nodes_per_set = ")')
377
378 do 120 i = 1, num_node_sets
379 write (iout, '(i3)') num_nodes_per_set(i)
380120 continue
381
382 write (iout, '("node_ind = ")')
383
384 do 130 i = 1, num_node_sets
385 write (iout, '(i3)') node_ind(i)
386130 continue
387
388 write (iout, '("node_list = ")')
389
390 do 140 i = 1, list_len
391 write (iout, '(i3)') node_list(i)
392140 continue
393
394 write (iout, '("dist_fact = ")')
395
396 do 150 i = 1, list_len
397 write (iout, '(f5.3)') dist_fact(i)
398150 continue
399 endif
400
401c read individual side sets
402
403 if (num_side_sets .gt. 0) then
404 call exgssi (exoid, ids, ierr)
405 write (iout, '(/"after exgssi, error = ", i3)' ) ierr
406 endif
407
408 do 190 i = 1, num_side_sets
409
410 call exgsp (exoid, ids(i), num_sides_in_set, num_df_in_set,
411 1 ierr)
412 write (iout, '(/"after exgsp, error = ", i3)' ) ierr
413
414 write (iout, '("side set ", i2, " parameters:",/
415 2 "num_sides = ", i3,/
416 3 "num_dist_factors = ", i3)')
417 4 ids(i), num_sides_in_set, num_df_in_set
418
419 call exgss (exoid, ids(i), elem_list, side_list, ierr)
420 write (iout, '(/"after exgss, error = ", i3)' ) ierr
421
422 call exgssn (exoid, ids(i), node_ctr_list, node_list, ierr)
423 write (iout, '(/"after exgssn, error = ", i3)' ) ierr
424
425 if (num_df_in_set .gt. 0) then
426 call exgssd (exoid, ids(i), dist_fact, ierr)
427 write (iout, '(/"after exgssd, error = ", i3)' ) ierr
428 endif
429
430 write (iout, '(/"element list for side set ", i2)') ids(i)
431
432 num_elem_in_set = num_sides_in_set
433 do 160 j = 1, num_elem_in_set
434 write (iout, '(i3)') elem_list(j)
435160 continue
436
437 write (iout, '("side list for side set ", i2)') ids(i)
438
439 do 170 j = 1, num_sides_in_set
440 write (iout, '(i3)') side_list(j)
441170 continue
442
443 node_ctr = 0
444 write (iout, '("node list for side set ", i2)') ids(i)
445 do 178 k=1, num_elem_in_set
446 do 175 j=1, node_ctr_list(k)
447 write (iout, '(i3)') node_list(j+node_ctr)
448175 continue
449 node_ctr = node_ctr+node_ctr_list(k)
450178 continue
451
452 if (num_df_in_set .gt. 0) then
453 write (iout, '("dist factors for side set ", i2)') ids(i)
454 do 180 j = 1, num_df_in_set
455 write (iout, '(f6.3)') dist_fact(j)
456180 continue
457 else
458 write (iout, '("no dist factors for side set ", i2)') ids(i)
459 endif
460
461190 continue
462
463c read side set properties
464
465 num_props = exinqi(exoid, exnssp)
466 write (iout,
467 1 '(/"There are ",i2," properties for each side set")')
468 2 num_props
469
470 call exgpn(exoid, exsset, prop_names, ierr)
471 write (iout, '("after exgpn, error = ", i3)' ) ierr
472
473 do 197 i = 1, num_props
474 do 195 j = 1, num_side_sets
475 call exgp(exoid, exsset,ids(j),prop_names(i),prop_value,ierr)
476 if (ierr .eq. 0) then
477 write( iout,
478 1 '("side set ",i2," property(",i2,"): ",a," = ",i5)' )
479 2 j, i, prop_names(i), prop_value
480 else
481 write (iout, '(/"after exgp, error = ", i3)' ) ierr
482 endif
483195 continue
484197 continue
485
486 num_side_sets = exinqi(exoid, exsids)
487 write (iout, '(/"after exinq: EXSIDS =",i3,", error = ",i3)')
488 1 num_side_sets,ierr
489
490 if (num_side_sets .gt. 0) then
491 elem_list_len = exinqi(exoid, exssel)
492 write (iout, '(/"after exinq: EXSSEL =",i3,", error = ",i3)')
493 1 elem_list_len,ierr
494
495 node_list_len = exinqi(exoid, exssnl)
496 write (iout, '(/"after exinq: EXSSNL =",i3,", error = ",i3)')
497 1 node_list_len,ierr
498
499 df_list_len = exinqi(exoid, exssdf)
500 write (iout, '(/"after exinq: EXSSDF =",i3,", error = ",i3)')
501 1 df_list_len,ierr
502
503c read concatenated side sets; this produces the same information as
504c the above code which reads individual side sets
505
506 call exgcss (exoid, ids, num_elem_per_set, num_df_per_set,
507 1 elem_ind, df_ind, elem_list, side_list, dist_fact,
508 2 ierr)
509 write (iout, '(/"after exgcss, error = ", i3)' ) ierr
510
511 write (iout, '("concatenated side set info")')
512
513 write (iout, '("ids = ")')
514
515 do 200 i = 1, num_side_sets
516 write (iout, '(i3)') ids(i)
517200 continue
518
519 write (iout, '("num_elem_per_set = ")')
520
521 do 210 i = 1, num_side_sets
522 write (iout, '(i3)') num_elem_per_set(i)
523210 continue
524
525 write (iout, '("num_df_per_set = ")')
526
527 do 220 i = 1, num_side_sets
528 write (iout, '(i3)') num_df_per_set(i)
529220 continue
530
531 write (iout, '("elem_ind = ")')
532
533 do 230 i = 1, num_side_sets
534 write (iout, '(i3)') elem_ind(i)
535230 continue
536
537 write (iout, '("df_ind = ")')
538
539 do 240 i = 1, num_side_sets
540 write (iout, '(i3)') df_ind(i)
541240 continue
542
543 write (iout, '("elem_list = ")')
544
545 do 250 i = 1, elem_list_len
546 write (iout, '(i3)') elem_list(i)
547250 continue
548
549 write (iout, '("side_list = ")')
550
551 do 260 i = 1, elem_list_len
552 write (iout, '(i3)') side_list(i)
553260 continue
554
555 write (iout, '("dist_fact = ")')
556
557 do 270 i = 1, df_list_len
558 write (iout, '(f6.3)') dist_fact(i)
559270 continue
560 endif
561
562c read QA records
563
564 num_qa_rec = exinqi(exoid, exqa)
565 call exgqa (exoid, qa_record, ierr)
566 write (iout, '(/"after exgqa, error = ", i3)' ) ierr
567
568 write (iout, '("QA records = ")')
569
570 do 290 i = 1, num_qa_rec
571 do 280 j = 1, 4
572 write (iout, '(a)') qa_record(j,i)
573280 continue
574290 continue
575
576c read information records
577
578 num_info = exinqi(exoid, exinfo)
579 call exginf (exoid, inform, ierr)
580 write (iout, '(/"after exginf, error = ", i3)' ) ierr
581
582 write (iout, '("info records = ")')
583
584 do 300 i = 1, num_info
585 write (iout, '(a81)') inform(i)
586300 continue
587
588c read global variables parameters and names
589
590 call exgvp (exoid, "g", num_glo_vars, ierr)
591 write (iout, '(/"after exgvp, error = ", i3)' ) ierr
592
593 call exgvnm (exoid, "g", 1, var_names(1), ierr)
594 write (iout, '(/"after exgvnm, error = ", i3)' ) ierr
595
596 write (iout, '("There are ",i2," global variables; their names ",
597 1 "are :")') num_glo_vars
598
599 do 320 i = 1, num_glo_vars
600 write (iout, '(a9)') var_names(i)
601320 continue
602
603c read nodal variables parameters and names
604
605 call exgvp (exoid, "n", num_nod_vars, ierr)
606 write (iout, '(/"after exgvp, error = ", i3)' ) ierr
607
608 call exgvan (exoid, "n", num_nod_vars, var_names, ierr)
609 write (iout, '(/"after exgvan, error = ", i3)' ) ierr
610
611 write (iout, '("There are ",i2," nodal variables; their names ",
612 1 "are :")') num_nod_vars
613
614 do 330 i = 1, num_nod_vars
615 write (iout, '(a9)') var_names(i)
616330 continue
617
618c read element variables parameters and names
619
620 call exgvp (exoid, "e", num_ele_vars, ierr)
621 write (iout, '(/"after exgvp, error = ", i3)' ) ierr
622
623 call exgvan (exoid, "e", num_ele_vars, var_names, ierr)
624 write (iout, '(/"after exgvan, error = ", i3)' ) ierr
625
626 write (iout, '("There are ",i2," element variables; their names ",
627 1 "are :")') num_ele_vars
628
629 do 340 i = 1, num_ele_vars
630 write (iout, '(a9)') var_names(i)
631340 continue
632
633c read element variable truth table
634
635 call exgvtt (exoid, num_elem_blk, num_ele_vars, truth_tab, ierr)
636 write (iout, '(/"after exgvtt, error = ", i3)' ) ierr
637
638 write (iout, '("This is the element variable truth table:")')
639
640 do 360 i = 1, num_elem_blk
641 do 350 j = 1, num_ele_vars
642 write (iout, '(i2)') truth_tab(j,i)
643350 continue
644360 continue
645
646c determine how many time steps are stored
647
648 num_time_steps = exinqi(exoid, extims)
649 write (iout, '("There are ",i2," time steps in the database.")')
650 1 num_time_steps
651
652c read time value at one time step
653
654 time_step = 3
655 call exgtim (exoid, time_step, time_value, ierr)
656 write (iout, '(/"after exgtim, error = ", i3)' ) ierr
657
658 write (iout, '("time value at time step ",i2," = ", f5.3)')
659 1 time_step, time_value
660
661c read time values at all time steps
662
663 call exgatm (exoid, time_values, ierr)
664 write (iout, '(/"after exgatm, error = ", i3)' ) ierr
665
666 write (iout, '("time values at all time steps are:")')
667
668 do 370 i = 1, num_time_steps
669 write (iout, '(f5.3)') time_values(i)
670370 continue
671
672 var_index = 1
673 beg_time = 1
674 end_time = -1
675
676c read all global variables at one time step
677
678 call exggv (exoid, time_step, num_glo_vars, var_values, ierr)
679 write (iout, '(/"after exggv, error = ", i3)' ) ierr
680
681 write (iout, '("global variable values at time step ",i2)')
682 1 time_step
683
684 do 400 i = 1, num_glo_vars
685 write (iout, '(f5.3)') var_values(i)
686400 continue
687
688c read a single global variable through time
689
690 call exggvt (exoid, var_index, beg_time, end_time, var_values,
691 1 ierr)
692 write (iout, '(/"after exggvt, error = ", i3)' ) ierr
693
694 write (iout, '("global variable ",i2," values through time:")')
695 1 var_index
696
697 do 410 i = 1, num_time_steps
698 write (iout, '(f5.3)') var_values(i)
699410 continue
700
701c read a nodal variable at one time step
702
703 call exgnv (exoid, time_step, var_index, num_nodes, var_values,
704 1 ierr)
705 write (iout, '(/"after exgnv, error = ", i3)' ) ierr
706
707 write (iout, '("nodal variable ",i2," values at time step ",i2)')
708 1 var_index, time_step
709
710 do 420 i = 1, num_nodes
711 write (iout, '(f5.3)') var_values(i)
712420 continue
713
714c read a nodal variable through time
715
716 node_num = 1
717
718 call exgnvt (exoid, var_index, node_num, beg_time, end_time,
719 1 var_values, ierr)
720 write (iout, '(/"after exgnvt, error = ", i3)' ) ierr
721
722 write (iout, '("nodal variable ",i2," values for node ",i2,
723 1 " through time:")') var_index, node_num
724
725 do 430 i = 1, num_time_steps
726 write (iout, '(f5.3)') var_values(i)
727430 continue
728
729c read an element variable at one time step
730
731 call exgebi (exoid, ids, ierr)
732 write (iout, '(/"after exgebi, error = ", i3)' ) ierr
733
734 do 450 i = 1, num_elem_blk
735
736 call exgev (exoid, time_step, var_index, ids(i),
737 1 num_elem_in_block(i), var_values, ierr)
738 write (iout, '(/"after exgev, error = ", i3)' ) ierr
739
740 if (ierr .eq. 0) then
741 write (iout, '("element variable ",i2," values of element ",
742 1 "block ",i2," at time step ",i2)')
743 2 var_index, ids(i), time_step
744 endif
745
746 do 440 j = 1, num_elem_in_block(i)
747 write (iout, '(f6.3)') var_values(j)
748440 continue
749
750450 continue
751
752c read an element variable through time
753
754 var_index = 2
755 elem_num = 2
756
757 call exgevt (exoid, var_index, elem_num, beg_time, end_time,
758 1 var_values, ierr)
759 write (iout, '(/"after exgevt, error = ", i3)' ) ierr
760
761 write (iout, '("element variable ",i2," values for element ",i2,
762 1 " through time:")') var_index, elem_num
763
764 do 460 i = 1, num_time_steps
765 write (iout, '(f5.3)') var_values(i)
766460 continue
767
768 call exclos (exoid, ierr)
769 write (iout, '(/"after exclos, error = ", i3)' ) ierr
770
771 stop
772 end
void exgqa(int *idexo, char *qa_record, int *ierr, int qa_recordlen)
Definition exo_jack.c:368
void exginf(int *idexo, char *info, int *ierr, int infolen)
Definition exo_jack.c:485
void exgssd(int *idexo, entity_id *side_set_id, real *side_set_dist_fact, int *ierr)
Definition exo_jack.c:1742
int64_t exinqi(int *idexo, int *req_info)
Definition exo_jack.c:2402
void exgnsd(int *idexo, entity_id *node_set_id, real *node_set_dist_fact, int *ierr)
Definition exo_jack.c:1550
void exgebi(int *idexo, void_int *elem_blk_ids, int *ierr)
Definition exo_jack.c:830
void exgvnm(int *idexo, char *var_type, int *var_index, char *var_name, int *ierr, int var_typelen, int var_namelen)
Definition exo_jack.c:2720
void exgpa(int *idexo, int *obj_type, char *prop_name, void_int *values, int *ierr, int prop_namelen)
Definition exo_jack.c:1424
void exgevt(int *idexo, int *elem_var_index, void_int *elem_number, int *beg_time_step, int *end_time_step, real *elem_var_vals, int *ierr)
Definition exo_jack.c:2273
void exggvt(int *idexo, int *glob_var_index, int *beg_time_step, int *end_time_step, real *glob_var_vals, int *ierr)
Definition exo_jack.c:2169
void exgp(int *idexo, int *obj_type, entity_id *obj_id, char *prop_name, void_int *value, int *ierr, int prop_namelen)
Definition exo_jack.c:1390
void exgcon(int *idexo, char *coord_names, int *ierr, int coord_nameslen)
Definition exo_jack.c:627
void exgssi(int *idexo, void_int *side_set_ids, int *ierr)
Definition exo_jack.c:1751
int exopen(char *path, int *mode, int *cpu_word_size, int *io_word_size, float *version, int *ierr, int pathlen)
Definition exo_jack.c:201
void exgvtt(int *idexo, int *num_entity, int *num_var, int *var_tab, int *ierr)
Definition exo_jack.c:2101
void exgean(int *idexo, entity_id *elem_blk_id, int *num_attr, char *names, int *ierr, int nameslen)
Definition exo_jack.c:935
void exgelb(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:799
void exclos(int *idexo, int *ierr)
Definition exo_jack.c:227
void exgcor(int *idexo, real *x_coor, real *y_coor, real *z_coor, int *ierr)
Definition exo_jack.c:560
void exgcns(int *idexo, void_int *node_set_ids, void_int *num_nodes_per_set, void_int *num_dist_per_set, void_int *node_sets_node_index, void_int *node_sets_dist_index, void_int *node_sets_node_list, real *node_sets_dist_fact, int *ierr)
Definition exo_jack.c:1634
void exgtim(int *idexo, int *time_step, real *time_value, int *ierr)
Definition exo_jack.c:2373
void exgnm(int *idexo, entity_id *map_id, void_int *node_map, int *ierr)
Definition exo_jack.c:2702
void exgpn(int *idexo, int *obj_type, char *prop_names, int *ierr, int prop_nameslen)
Definition exo_jack.c:1270
void exgssn(int *idexo, entity_id *side_set_id, void_int *side_set_node_cnt_list, void_int *side_set_node_list, int *ierr)
Definition exo_jack.c:2427
void exgnsi(int *idexo, void_int *node_set_ids, int *ierr)
Definition exo_jack.c:1559
void exgini(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:279
void exgns(int *idexo, entity_id *node_set_id, void_int *node_set_node_list, int *ierr)
Definition exo_jack.c:1541
void exgem(int *idexo, entity_id *map_id, void_int *elem_map, int *ierr)
Definition exo_jack.c:2654
void exgcss(int *idexo, void_int *side_set_ids, void_int *num_elem_per_set, void_int *num_dist_per_set, void_int *side_sets_elem_index, void_int *side_sets_dist_index, void_int *side_sets_elem_list, void_int *side_sets_side_list, real *side_sets_dist_fact, int *ierr)
Definition exo_jack.c:1825
void exgnvt(int *idexo, int *nodal_var_index, void_int *node_number, int *beg_time_step, int *end_time_step, real *nodal_var_vals, int *ierr)
Definition exo_jack.c:2216
void exgeat(int *idexo, entity_id *elem_blk_id, real *attrib, int *ierr)
Definition exo_jack.c:926
void exgev(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:2254
void exgmp(int *idexo, int *num_node_maps, int *num_elem_maps, int *ierr)
Definition exo_jack.c:2693
void exgatm(int *idexo, real *time_values, int *ierr)
Definition exo_jack.c:2382
void exgvp(int *idexo, char *var_type, int *num_vars, int *ierr, int var_typelen)
Definition exo_jack.c:1920
void exgss(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
void exgnv(int *idexo, int *time_step, int *nodal_var_index, void_int *num_nodes, real *nodal_var_vals, int *ierr)
Definition exo_jack.c:2198
void exgelc(int *idexo, entity_id *elem_blk_id, void_int *connect, int *ierr)
Definition exo_jack.c:848
void exggv(int *idexo, int *time_step, int *num_glob_vars, real *glob_var_vals, int *ierr)
Definition exo_jack.c:2159
void exgsp(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:1694
void exgnp(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:1513
void exgpem(int *idexo, entity_id *map_id, void_int *start, void_int *count, void_int *elem_map, int *ierr)
Definition exo_jack.c:2663
void exgvan(int *idexo, char *var_type, int *num_vars, char *var_names, int *ierr, int var_typelen, int var_nameslen)
Definition exo_jack.c:1981