The objective is to connect a set of existing nodes (3 dimensional) into a tetrahedral mesh that satisfies the Delaunay criterion using the connect command. The output consists of two mesh files - one showing the point distribution and the other showing the resulting tetrahedral mesh.
GMV and AVS format mesh files are written here. The AVS format is common and can be read by many applications. The GMV (General Mesh Viewer) files are best read by GMV but other applications such as VisIt and MATLAB can read them.
On the command line this would be:
lagrit < input.lgi
Note all files must end with a “finish” command to exit gracefully. Comments help as reminders for what is being done. The use of the define command makes it easy to change command parameters from run to run. The images above visualize the point file input_points.inp and the tetrahedral mesh output_connect.inp.
# TEST connect (3d) (lagrit_input_connect)
# LaGriT input file to generate an orthogonal grid on
# a unit cube. Just change nx,ny,nz to change the resolution.
#
define/nx/20
define/ny/20
define/nz/20
cmo / create / cmo / / / tet
createpts/xyz/ nx ny nz/ 0. 0. 0. / 1. 1. 1. / 1 1 1
cmo / setatt / cmo / imt / 1 0 0 / 1
dump/ gmv /output_conn1.gmv/cmo
# write the point files
dump / gmv / input_points.gmv/cmo
dump / avs / input_points.inp/cmo
# no materials so turn off interface detection
connect / noadd
resetpts / itp
# write the mesh files
dump / gmv / output_connect.gmv/cmo
dump / avs / output_connect.inp/cmo
# write mesh object information
cmo/status
cmo/printatt//-all-/minmax
quality
finish
LaGriT will echo commands and report information during the run. These are written to the screen and the file lagrit.out (or outx3dgen). This information can be very useful, it will report Errors and Warnings to help the user figure out what may have gone wrong.
There are also many commands that report the status and condition of the mesh object. For instance, the cmo/printatt//-all-/minmax command writes the current mesh object attributes and the min and max for each. The quality command reports element aspect ratios and volumes. Negative or zero volumes can indicate a problem with how the mesh was created.
cmo/create/cmo///tet createpts/xyz/nx ny nz/0. 0. 0./1. 1. 1./1 1 1 RZ GENERATED POINTS 1 TO 8000 cmo/setatt/cmo/imt/1 0 0/1 Warning: nelements = 0 8000 values reset for attribute imt1 connect/noadd Coordinates of enclosing tetrahedron are: -0.20000D+01 -0.75000D+00 -0.75000D+00 0.50000D+00 -0.75000D+00 0.42500D+01 0.30000D+01 -0.75000D+00 -0.75000D+00 0.50000D+00 0.42500D+01 0.50000D+00 ntets= 29572 node index= 5000 nlstfail= 0 %done= 61.58 The mesh is now complete! LaGriT FINISH: connect cmo/printatt//-all-/minmax ATTRIBUTE NAME MIN MAX DIFFERENCE LENGTH -def- 0.000000000E+00 0.000000000E+00 0.000000000E+00 8000 scalar 1 1 0 1 vector 3 3 0 1 nnodes 8000 8000 0 1 nedges 0 0 0 1 nfaces 0 0 0 1 nelements 40751 40751 0 1 mbndry 16000000 16000000 0 1 ndimensions_topo 3 3 0 1 ndimensions_geom 3 3 0 1 nodes_per_element 4 4 0 1 edges_per_element 6 6 0 1 faces_per_element 4 4 0 1 isetwd 0 0 0 8000 ialias 0 0 0 8000 imt1 1 1 0 8000 itp1 0 10 10 8000 icr1 0 0 0 8000 isn1 0 0 0 8000 xic 0.000000000E+00 1.000000000E+00 1.000000000E+00 8000 yic 0.000000000E+00 1.000000000E+00 1.000000000E+00 8000 zic 0.000000000E+00 1.000000000E+00 1.000000000E+00 8000 xtetwd 0 0 0 40751 itetclr 1 1 0 40751 itettyp 5 5 0 40751 itetoff 0 163000 163000 40751 jtetoff 0 163000 163000 40751 itet 1 8000 7999 40751x4 jtet 1 16000000 15999999 40751x4 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 8000 8000 0 1 ipointj 8000 8000 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 quality epsilonl, epsilonaspect: 3.8459254E-13 5.6885628E-38 -------------------------------------------- elements with aspect ratio < .01: 0 elements with aspect ratio b/w .01 and .02: 0 elements with aspect ratio b/w .02 and .05: 0 elements with aspect ratio b/w .05 and .1 : 0 elements with aspect ratio b/w .1 and .2 : 0 elements with aspect ratio b/w .2 and .5 : 0 elements with aspect ratio b/w .5 and 1. : 40751 min aspect ratio = 0.6230E+00 max aspect ratio = 0.1000E+01 epsilonvol: 2.2204460E-13 --------------------------------------- element volumes b/w 0.2430E-04 and 0.2791E-04: 40348 element volumes b/w 0.2791E-04 and 0.3206E-04: 0 element volumes b/w 0.3206E-04 and 0.3683E-04: 0 element volumes b/w 0.3683E-04 and 0.4231E-04: 0 element volumes b/w 0.4231E-04 and 0.4860E-04: 403 min volume = 2.4298975E-05 max volume = 4.8597949E-05 ----------------------------------------------------------- 40751 total elements evaluated. finish