Example 1: test mesh edges and boundary faces for negative coupling coefficients.
The objective is to use the negative_aij / rivara command that first identifies elements that have negative coupling coefficents, and then proceeds with a rivara boundary refinement to reduce or eliminate the negative couplings.
Input Mesh
Output Mesh
Output Mesh Refine Detail
cmo/create/cmo
surface/outside/reflect/box/0,0,0/3,2,1
region/all/le outside
mregion/all/le outside
createpts/xyz/3,3,3/0,0,0/3,2,1/1,1,1
createpts/xyz/2,2,2/.2,.05,.1/3,2,1/0,0,0
createpts/xyz/3,3,3/0,0,0/1.5,1.0 .5/1,1,1
createpts/xyz/2,2,2/.1,0,0/1.5,1.0 .5/0,0,0
# remove duplicate points
filter/1,0,0
cmo/setatt/cmo/imt/1,0,0/1
# set node material imt
setpts
# connect points into Delaunay mesh
connect
dump/gmv/output1.gmv
negative_aij/rivara/
negative_aij/eltset
dump/gmv/output2.gmv
# report results
cmo/status
cmo/printatt//-all-/minmax
quality
finish
The output log is very long with information for each command and refinement operation. The following shows the end outpu of the commands.
cmo/printatt//-all-/minmax
ATTRIBUTE NAME MIN MAX DIFFERENCE LENGTH
-def- 0.000000000E+00 0.000000000E+00 0.000000000E+00 840
scalar 1 1 0 1
vector 3 3 0 1
nnodes 840 840 0 1
nedges 0 0 0 1
nfaces 0 0 0 1
nelements 2432 2432 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 840
ialias 0 840 840 840
imt1 0 1 1 840
itp1 0 10 10 840
icr1 0 1 1 840
isn1 0 0 0 840
xic 0.000000000E+00 3.000000000E+00 3.000000000E+00 840
yic 0.000000000E+00 2.000000000E+00 2.000000000E+00 840
zic 0.000000000E+00 1.000000000E+00 1.000000000E+00 840
xtetwd 0 26688 26688 2432
itetclr 1 1 0 2432
itettyp 5 5 0 2432
itetoff 0 9724 9724 2432
jtetoff 0 9724 9724 2432
itet 3 840 837 2432x4
jtet 1 16000000 15999999 2432x4
epsilon 1.000000004E-15 1.000000004E-15 0.000000000E+00 1
epsilonl 8.308148362E-13 8.308148362E-13 0.000000000E+00 1
epsilona 3.108624469E-12 3.108624469E-12 0.000000000E+00 1
epsilonv 1.332267630E-12 1.332267630E-12 0.000000000E+00 1
ipointi 807 807 0 1
ipointj 840 840 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 3.000000000E+00 3.000000000E+00 0.000000000E+00 1
ymax 2.000000000E+00 2.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
ncon50 2500 2500 0 1
nconbnd 1 1 0 1
icontab 0 2 2 2500
num_neg_coup_coef 140 140 0 1
neg_coup_coeff -1.204850781E-01 -2.441406250E-04 1.202409374E-01 140
ietet_aij 1 2401 2400 140x3
Enter a command
quality
epsilonl, epsilonaspect: 8.3081484E-13 5.7347268E-37
--------------------------------------------
elements with aspect ratio < .01: 2
elements with aspect ratio b/w .01 and .02: 4
elements with aspect ratio b/w .02 and .05: 105
elements with aspect ratio b/w .05 and .1 : 212
elements with aspect ratio b/w .1 and .2 : 347
elements with aspect ratio b/w .2 and .5 : 1107
elements with aspect ratio b/w .5 and 1. : 655
min aspect ratio = 0.3823E-02 max aspect ratio = 0.9883E+00
epsilonvol: 1.3322676E-12
---------------------------------------
element volumes b/w 0.7629E-05 and 0.4307E-04: 123
element volumes b/w 0.4307E-04 and 0.2432E-03: 639
element volumes b/w 0.2432E-03 and 0.1373E-02: 854
element volumes b/w 0.1373E-02 and 0.7750E-02: 600
element volumes b/w 0.7750E-02 and 0.4375E-01: 216
min volume = 7.6293945E-06 max volume = 4.3750000E-02
-----------------------------------------------------------
2432 total elements evaluated.
finish
LaGriT successfully completed