Files
LaGriT/test/level02/exodus_cube/reference/outx3dgen
2025-12-17 11:00:57 +08:00

545 lines
39 KiB
Plaintext
Executable File

* * * * * * * * * * * * * * * * * * * * * * * * *
* * *
* * Program: LaGriT V3.330 Linux *
* * date_compile: 2021/10/15 test *
* * Run Time: 2021/Nov 10 11:16:44 *
* * Manual: http://lagrit.lanl.gov *
* * *
* * * * * * * * * * * * * * * * * * * * * * * * *
-----oOo-----
LaGriT V3 LA-CC-15-069 https://github.com/lanl/LaGriT
Copyright 2016. Triad National Security, LLC. All rights reserved. This
program was produced under U.S. Government contract 89233218CNA000001
for Los Alamos National Laboratory (LANL), which is operated by Triad
National Security, LLC for the U.S. Department of Energy/National Nuclear
Security Administration. All rights in the program are reserved by Triad
National Security, LLC, and the U.S. Department of Energy/National Nuclear
Security Administration. The Government is granted for itself and others
acting on its behalf a nonexclusive, paid-up, irrevocable worldwide license
in this material to reproduce, prepare derivative works, distribute copies
to the public, perform publicly and display publicly, and to permit others to
do so. This software is open source and available under the BSD-3 License.
-----oOo-----
Output log file: outx3dgen
Command log file: logx3dgen
# Test exodus workflow
# start with hex mesh
# test method and commands for exo mesh and facesets
# create simple cube of hex elements with 2 materials.
# exo mesh and facesets can be viewed using paraview
# Reorder itetclr materials based on exo block conventions
# Exodus routine will do this sort, we pre-sort so the
# input and output meshes will be the same
# create a top and bottom faceset for exodus file
cmo/create/mohex///hex
createpts/brick/xyz/3 3 3/0 0 0/1 1 1/1 1 1
Number of nodes: 27
Number of elements: 8
Number of negative volume elements: 0
Total volume: 0.100000000000E+01
cmo setatt mohex itetclr 1
8 values reset for attribute itetclr
cmo setatt mohex imt 1
27 values reset for attribute imt1
cmo setatt mohex itetclr 1,2,1 2
2 values reset for attribute itetclr
resetpts/itp
geniee
finish
dump avs output_hex_start.inp mohex
cmo/modatt/-def-/-def-/ioflag/x
finish
# use sort to order element blocks as exodus will order
# if this is not done, lagrit faceset numbers will not
# correlate to exodus faceset numbers
# itetclr must be ordered correctly
# sort based on element itetclr number and median location
createpts/median
cmo/addatt//xmed/VDOUBLE/scalar/nelements///gal/0.
finish
cmo/addatt//ymed/VDOUBLE/scalar/nelements///gal/0.
finish
cmo/addatt//zmed/VDOUBLE/scalar/nelements///gal/0.
finish
sort/mohex/index/ascending/ikey/itetclr xmed ymed zmed
cmo/addatt/mohex/ikey/vint/scalar/nelements///gax/0
finish
SORT: order key written to attribute: ikey
reorder/mohex/ikey
geniee
finish
dump/avs/out_tmp_sort1.inp/mohex
cmo/modatt/-def-/-def-/ioflag/x
finish
cmo/DELATT/mohex/ikey
# sort nodes based on mesh convention z, y, then x
sort/mohex/index/ascending/ikey/zic yic xic
cmo/addatt/mohex/ikey/vint/scalar/nnodes///gax/0
finish
SORT: order key written to attribute: ikey
reorder/mohex/ikey
dump/avs/out_tmp_sort2.inp/mohex
cmo/modatt/-def-/-def-/ioflag/x
finish
cmo/DELATT/mohex/xmed
cmo/DELATT/mohex/ymed
cmo/DELATT/mohex/zmed
cmo/DELATT/mohex/ikey
# write element sets for each material
eltset/e_mat1/itetclr/eq/1
THE ELTSET e_mat1 HAS 6 ELEMENTS
eltset/e_mat2/itetclr/eq/2
THE ELTSET e_mat2 HAS 2 ELEMENTS
eltset/e_mat1/write/output_mat_1.cellset/ascii
THERE ARE 2 ELTSETS DEFINED
e_mat1 e_mat2
ELTSET: OUTPUT e_mat1 1 ELTSETS TO FILE
eltset/e_mat2/write/output_mat_1.cellset/ascii
THERE ARE 2 ELTSETS DEFINED
e_mat1 e_mat2
ELTSET: OUTPUT e_mat2 1 ELTSETS TO FILE
# extract the outside surface of the full mesh
# to find and list the boundary face ID to its element ID
extract/surfmesh/1 0 0/mo_surf/mohex/external
cmo/addatt/mo_surf/itetclr0/vint/scalar/nelements////0
finish
cmo/addatt/mo_surf/itetclr1/vint/scalar/nelements////0
finish
cmo/addatt/mo_surf/idnode0/vint/scalar/nnodes////0
finish
cmo/addatt/mo_surf/idelem0/vint/scalar/nelements////0
finish
cmo/addatt/mo_surf/idelem1/vint/scalar/nelements////0
finish
cmo/addatt/mo_surf/facecol/vint/scalar/nelements////0
finish
cmo/addatt/mo_surf/idface0/vint/scalar/nelements////0
finish
cmo/addatt/mo_surf/idface1/vint/scalar/nelements////0
finish
cmo/addatt/mo_surf/ncon50/int/scalar/scalar/constant/permanent/x/0
finish
cmo/addatt/mo_surf/nconbnd/int/scalar/scalar/constant/permanent/x/0
finish
cmo/addatt/mo_surf/icontab/vint/scalar/ncon50/constant/permanent/x/0
finish
resetpts/itp
geniee
finish
finish
cmo/printatt/mo_surf/-all-/minmax
ATTRIBUTE NAME MIN MAX DIFFERENCE LENGTH
-def- 0.000000000E+00 0.000000000E+00 0.000000000E+00 26
scalar 1 1 0 1
vector 3 3 0 1
nnodes 26 26 0 1
nedges 0 0 0 1
nfaces 0 0 0 1
nelements 24 24 0 1
mbndry 16000000 16000000 0 1
ndimensions_topo 2 2 0 1
ndimensions_geom 3 3 0 1
nodes_per_element 4 4 0 1
edges_per_element 4 4 0 1
faces_per_element 4 4 0 1
isetwd 0 0 0 26
ialias 0 0 0 26
imt1 1 1 0 26
itp1 0 0 0 26
icr1 0 0 0 26
isn1 0 0 0 26
xic 0.000000000E+00 1.000000000E+00 1.000000000E+00 26
yic 0.000000000E+00 1.000000000E+00 1.000000000E+00 26
zic 0.000000000E+00 1.000000000E+00 1.000000000E+00 26
xtetwd 0 0 0 24
itetclr 1 1 0 24
itettyp 4 4 0 24
itetoff 0 92 92 24
jtetoff 0 92 92 24
itet 1 26 25 24x4
jtet 1 96 95 24x4
epsilon 1.000000004E-15 1.000000004E-15 0.000000000E+00 1
epsilonl 9.999999939E-09 9.999999939E-09 0.000000000E+00 1
epsilona 9.999999939E-09 9.999999939E-09 0.000000000E+00 1
epsilonv 9.999999939E-09 9.999999939E-09 0.000000000E+00 1
ipointi 1 1 0 1
ipointj 26 26 0 1
idebug 0 0 0 1
itypconv_sm 1 1 0 1
maxiter_sm 25 25 0 1
tolconv_sm 1.000000000E+00 1.000000000E+00 0.000000000E+00 1
nnfreq 1 1 0 1
ivoronoi 1 1 0 1
iopt2to2 2 2 0 1
xmin -1.000000000E+00 -1.000000000E+00 0.000000000E+00 1
ymin -1.000000000E+00 -1.000000000E+00 0.000000000E+00 1
zmin -1.000000000E+00 -1.000000000E+00 0.000000000E+00 1
xmax 1.000000000E+00 1.000000000E+00 0.000000000E+00 1
ymax 1.000000000E+00 1.000000000E+00 0.000000000E+00 1
zmax 1.000000000E+00 1.000000000E+00 0.000000000E+00 1
kdtree_level 0 0 0 1
max_number_sets 64 64 0 1
number_of_psets 0 0 0 1
number_of_eltsets 0 0 0 1
number_of_fsets 0 0 0 1
itetclr0 0 0 0 24
itetclr1 1 2 1 24
idnode0 1 27 26 26
idelem0 0 0 0 24
idelem1 1 8 7 24
facecol 1 2 1 24
idface0 0 0 0 24
idface1 1 6 5 24
ncon50 0 0 0 1
nconbnd 0 0 0 1
0 length attribute: icontab
# Locate the top and bottom boundary faces
# Set surface elements to direction they face based on normals
# These values will be written to itetclr, copy to id_side attribute
# Values 1 = bottom 2 = top
cmo/addatt/mo_surf/id_side/vint/scalar/nelements
cmo/select mo_surf
settets/normal
assign_color_normal epsilon for zero: 1.0000000E-15
20 out of 24 element colors changed.
cmo/copyatt/mo_surf mo_surf/id_side itetclr
24 copied from mo_surf itetclr to -> mo_surf id_side
cmo/printatt/mo_surf/id_side/minmax
ATTRIBUTE NAME MIN MAX DIFFERENCE LENGTH
id_side 1 6 5 24
dump avs output_hex_surface.inp mo_surf
cmo/modatt/-def-/-def-/ioflag/x
finish
# make sure to remove all attributes except idelem1 and idface1
cmo/DELATT/mo_surf/itetclr0
cmo/DELATT/mo_surf/idnode0
cmo/DELATT/mo_surf/idelem0
cmo/DELATT/mo_surf/facecol
cmo/DELATT/mo_surf/itetclr1
cmo/DELATT/mo_surf/idface0
# Get bottom faces and write faceset file
cmo/copy/mo_tmp/mo_surf
cmo/select/mo_tmp
eltset/e_bottom/id_side/eq/1
THE ELTSET e_bottom HAS 4 ELEMENTS
eltset/e_delete/not/e_bottom
THE ELTSET e_delete HAS 20 ELEMENTS
rmpoint/element/eltset get e_delete
Dudded 17 points plus parents, and 20 elements removed.
rmpoint/compress
17 points removed and 0 elements removed.
RMPOINT: new point count is 9
RMPOINT: new element count is 4
cmo/DELATT/mo_tmp/id_side
dump/avs2/output_1_bottom.faceset/mo_tmp/0 0 0 2
WARNING: dump/avs iopt_points= 0
WARNING: dump/avs iopt_elements= 0
WARNING: dump/avs iopt_values_node= 0
WARNING: dump/avs iopt_values_elem= 2
WARNING: dump/avs will produce non-standard AVS output that
WARNING: read/avs may not be able to read.
cmo/modatt/-def-/-def-/ioflag/x
finish
cmo/printatt/mo_tmp/idelem1
Attribute: idelem1
1 2
2 5
3 7
4 8
cmo/printatt/mo_tmp/idface1
Attribute: idface1
1 1
2 1
3 1
4 1
cmo/delete/mo_tmp
Released Mesh Object: mo_tmp
# Get top faces and write faceset file
cmo/copy/mo_tmp/mo_surf
cmo/select/mo_tmp
eltset/e_top/id_side/eq/2
THE ELTSET e_top HAS 4 ELEMENTS
eltset/e_delete/not/e_top
THE ELTSET e_delete HAS 20 ELEMENTS
rmpoint/element/eltset get e_delete
Dudded 17 points plus parents, and 20 elements removed.
rmpoint/compress
17 points removed and 0 elements removed.
RMPOINT: new point count is 9
RMPOINT: new element count is 4
cmo/DELATT/mo_tmp/id_side
dump/avs2/output_2_top.faceset/mo_tmp/0 0 0 2
WARNING: dump/avs iopt_points= 0
WARNING: dump/avs iopt_elements= 0
WARNING: dump/avs iopt_values_node= 0
WARNING: dump/avs iopt_values_elem= 2
WARNING: dump/avs will produce non-standard AVS output that
WARNING: read/avs may not be able to read.
cmo/modatt/-def-/-def-/ioflag/x
finish
cmo/printatt/mo_tmp/idelem1
Attribute: idelem1
1 1
2 3
3 4
4 6
cmo/printatt/mo_tmp/idface1
Attribute: idface1
1 2
2 2
3 2
4 2
cmo/delete/mo_tmp
Released Mesh Object: mo_tmp
# write final output mesh and with faceset file
# This exo file can be read into GMV
# show the facesets under Display Surfaces
dump/exo/output_hex_final.exo/mohex///facesets output_1_bottom.faceset output_2_
top.faceset
got 1 output_1_bottom.faceset
got 2 output_2_top.faceset
ExodusII: Start writing to file: output_hex_final.exo using cmo: mohex
cmo/set_id/mohex/element/e_num_temp
cmo/addatt/mohex e_num_temp/VINT/scalar/nelements/linear/permanent//0
finish
finish
sort/mohex/index/ascending/ikey_utr/itetclr/e_num_temp
cmo/addatt/mohex/ikey_utr/vint/scalar/nelements///gax/0
finish
SORT: order key written to attribute: ikey_utr
finish
cmo/DELATT/mohex/e_num_temp
finish
Title: LAGRIT TO EXODUSII
number of dimension: 3
number of nodes: 27
number of elements: 8
number of edges: 0
number of edge blocks: 0
number of element blocks: 2
number of face blocks: 0
number of node sets: 0
number of edge sets: 0
number of element sets: 0
number of side sets: 2
number of face sets: 0
number of node maps: 0
number of edge maps: 0
number of face maps: 0
number of element maps: 0
------------------------------------------
EXPSS loop:
1 Side Set tag: 1 Faces: 4
2 Side Set tag: 2 Faces: 4
------------------------------------------
Done ExodusII Side Sets Total: 2
ExodusII: Done writing to ExodusII file: output_hex_final.exo using cmo: mohex
dump/avs/output_hex_final.inp/mohex
cmo/modatt/-def-/-def-/ioflag/x
finish
# report on hex mesh
quality volume material
QUALITY TOTALS for 2 MATERIALS:
...........................................................
eltset/-etmp-/itetclr/eq/1/
THE ELTSET -etmp- HAS 6 ELEMENTS
finish
epsilonvol: 2.2204460E-13
---------------------------------------
VOLUMES for ELEMENT COLOR 1
...........................
All elements have volume 1.2500000E-01
eltset/-etmp-/delete/
ELTSET -etmp- DELETED
finish
eltset/-etmp-/itetclr/eq/2/
THE ELTSET -etmp- HAS 2 ELEMENTS
finish
---------------------------------------
VOLUMES for ELEMENT COLOR 2
...........................
All elements have volume 1.2500000E-01
eltset/-etmp-/delete/
ELTSET -etmp- DELETED
finish
---------------------------------------
SUMMARY VOLUME/AREA of ELEMENT COLORS for mohex 1 2
...........................................................
Color Num. Elements Volume Fractional Volume
1 6 0.7500000E+00 0.750000000
2 2 0.2500000E+00 0.250000000
Total elements: 8 Total Volume: 0.1000000E+01
-----------------------------------------------------------
8 total elements evaluated.
cmo printatt mohex -all- minmax
ATTRIBUTE NAME MIN MAX DIFFERENCE LENGTH
-def- 0.000000000E+00 0.000000000E+00 0.000000000E+00 27
scalar 1 1 0 1
vector 3 3 0 1
nnodes 27 27 0 1
nedges 0 0 0 1
nfaces 0 0 0 1
nelements 8 8 0 1
mbndry 16000000 16000000 0 1
ndimensions_topo 3 3 0 1
ndimensions_geom 3 3 0 1
nodes_per_element 8 8 0 1
edges_per_element 12 12 0 1
faces_per_element 6 6 0 1
isetwd 0 0 0 27
ialias 0 0 0 27
imt1 1 1 0 27
itp1 2 12 10 27
icr1 0 0 0 27
isn1 0 0 0 27
xic 0.000000000E+00 1.000000000E+00 1.000000000E+00 27
yic 0.000000000E+00 1.000000000E+00 1.000000000E+00 27
zic 0.000000000E+00 1.000000000E+00 1.000000000E+00 27
xtetwd 1 2 1 8
itetclr 1 2 1 8
itettyp 8 8 0 8
itetoff 0 56 56 8
jtetoff 0 42 42 8
itet 1 27 26 8x8
jtet 4 16000047 16000043 8x6
epsilon 1.000000004E-15 1.000000004E-15 0.000000000E+00 1
epsilonl 3.845925373E-13 3.845925373E-13 0.000000000E+00 1
epsilona 6.661338148E-13 6.661338148E-13 0.000000000E+00 1
epsilonv 2.220446049E-13 2.220446049E-13 0.000000000E+00 1
ipointi 1 1 0 1
ipointj 27 27 0 1
idebug 0 0 0 1
itypconv_sm 1 1 0 1
maxiter_sm 25 25 0 1
tolconv_sm 1.000000000E+00 1.000000000E+00 0.000000000E+00 1
nnfreq 1 1 0 1
ivoronoi 1 1 0 1
iopt2to2 2 2 0 1
xmin 0.000000000E+00 0.000000000E+00 0.000000000E+00 1
ymin 0.000000000E+00 0.000000000E+00 0.000000000E+00 1
zmin 0.000000000E+00 0.000000000E+00 0.000000000E+00 1
xmax 1.000000000E+00 1.000000000E+00 0.000000000E+00 1
ymax 1.000000000E+00 1.000000000E+00 0.000000000E+00 1
zmax 1.000000000E+00 1.000000000E+00 0.000000000E+00 1
kdtree_level 0 0 0 1
max_number_sets 64 64 0 1
number_of_psets 0 0 0 1
number_of_eltsets 0 0 0 1
number_of_fsets 0 0 0 1
ikey_utr 1 8 7 8
# report on faces surface mesh
cmo printatt mo_surf -all- minmax
ATTRIBUTE NAME MIN MAX DIFFERENCE LENGTH
-def- 0.000000000E+00 0.000000000E+00 0.000000000E+00 26
scalar 1 1 0 1
vector 3 3 0 1
nnodes 26 26 0 1
nedges 0 0 0 1
nfaces 0 0 0 1
nelements 24 24 0 1
mbndry 16000000 16000000 0 1
ndimensions_topo 2 2 0 1
ndimensions_geom 3 3 0 1
nodes_per_element 4 4 0 1
edges_per_element 4 4 0 1
faces_per_element 4 4 0 1
isetwd 0 0 0 26
ialias 0 0 0 26
imt1 1 1 0 26
itp1 0 0 0 26
icr1 0 0 0 26
isn1 0 0 0 26
xic 0.000000000E+00 1.000000000E+00 1.000000000E+00 26
yic 0.000000000E+00 1.000000000E+00 1.000000000E+00 26
zic 0.000000000E+00 1.000000000E+00 1.000000000E+00 26
xtetwd 0 0 0 24
itetclr 1 6 5 24
itettyp 4 4 0 24
itetoff 0 92 92 24
jtetoff 0 92 92 24
itet 1 26 25 24x4
jtet 1 96 95 24x4
epsilon 1.000000004E-15 1.000000004E-15 0.000000000E+00 1
epsilonl 9.999999939E-09 9.999999939E-09 0.000000000E+00 1
epsilona 9.999999939E-09 9.999999939E-09 0.000000000E+00 1
epsilonv 9.999999939E-09 9.999999939E-09 0.000000000E+00 1
ipointi 1 1 0 1
ipointj 26 26 0 1
idebug 0 0 0 1
itypconv_sm 1 1 0 1
maxiter_sm 25 25 0 1
tolconv_sm 1.000000000E+00 1.000000000E+00 0.000000000E+00 1
nnfreq 1 1 0 1
ivoronoi 1 1 0 1
iopt2to2 2 2 0 1
xmin -1.000000000E+00 -1.000000000E+00 0.000000000E+00 1
ymin -1.000000000E+00 -1.000000000E+00 0.000000000E+00 1
zmin -1.000000000E+00 -1.000000000E+00 0.000000000E+00 1
xmax 1.000000000E+00 1.000000000E+00 0.000000000E+00 1
ymax 1.000000000E+00 1.000000000E+00 0.000000000E+00 1
zmax 1.000000000E+00 1.000000000E+00 0.000000000E+00 1
kdtree_level 0 0 0 1
max_number_sets 64 64 0 1
number_of_psets 0 0 0 1
number_of_eltsets 0 0 0 1
number_of_fsets 0 0 0 1
idelem1 1 8 7 24
idface1 1 6 5 24
ncon50 0 0 0 1
nconbnd 0 0 0 1
0 length attribute: icontab
id_side 1 6 5 24
finish
LaGriT successfully completed