Bent Cube Example

We start with a mesh of the unit cube. The edges of the tetrahedra have lengths close to 0.1. In the figures below, we show the modified condition number of the elements.

  cp ../../../data/geom/mesh/33/cube_1_1_1_0.1.txt mesh.txt 
cubeBendMesh.jpg

The initial mesh of the cube. The minimum modified condition number is 0.58; the mean is 0.86.

We distort the mesh by moving the vertices according to the following function:

  x = x
  y = y
  z = z + 0.75 - 1.5 * x * x - 1.5 * y * y 

The distortion reduces the quality of the mesh.

  python.exe ../../../data/geom/mesh/utilities/vertices_map.py bend mesh.txt distorted.txt 
cubeBendDistorted.jpg

The distorted mesh. The minimum modified condition number is 0.15; the mean is 0.61.

We apply cycles of topological optimization followed by a sweep of geometric optimization to improve the quality of the distorted mesh. We use a dihedral angle deviation of 0.5 to define edge features on the boundary. Intersecting edge features form corner features.

  utility/boundary33.exe distorted.txt boundary.txt
  optimization/topologicalOptimize3.exe -manifold=boundary.txt -angle=0.5 distorted.txt t1.txt
  optimization/geometricOptimize3.exe -boundary=boundary.txt -dihedralAngle=0.5 t1.txt t1g1.txt
  optimization/topologicalOptimize3.exe -manifold=boundary.txt -angle=0.5 t1g1.txt t2g1.txt
  optimization/geometricOptimize3.exe -boundary=boundary.txt -dihedralAngle=0.5 t2g1.txt t2g2.txt
  optimization/topologicalOptimize3.exe -manifold=boundary.txt -angle=0.5 t2g2.txt t3g2.txt
  optimization/geometricOptimize3.exe -boundary=boundary.txt -dihedralAngle=0.5 t3g2.txt t3g3.txt 
cubeBendT1G1.jpg

1 optimization cycle. The minimum modified condition number is 0.22; the mean is 0.79.

cubeBendT2G2.jpg

2 optimization cycles. The minimum modified condition number is 0.37; the mean is 0.82.

cubeBendT3G3.jpg

3 optimization cycles. The minimum modified condition number is 0.38; the mean is 0.84.

The optimization improves the quality of the mesh while retaining its edge and corner features. Vertices on surface features have been allowed to move within their surface patches. Vertices on edge features have been allowed to move along edges. Vertices on corner features have been fixed.

Generated on Thu Jun 30 02:14:57 2016 for Computational Geometry Package by  doxygen 1.6.3