# Hints, Tips and Solutions

How can I do local conformal mesh refinement in Victory Process?

Introduction

The Victory Process conformal export is generated from the volume planes specified in a user deck. The accuracy and resolution of the export is currently controlled by these planes. Local refinement gives a further level of user control that allows the mesh density to be increased near regions of interest. We now support: interface, junction, box and global refinement schemes. These refinement schemes behave similarly to the Delaunay export, with the exception that the distance parameter is calculated automatically. This is necessary since the conformal nature of the mesh would be lost if the wrong distance is used.

Conformal refinement is achieved by subdividing an element into eight. The element ‘shape’ is maintained by the subdivision. In the case of a path simplex within the conformal mesh (six tetrahedra forming a cube), a single level of refinement will create 48 new elements. These new elements will form eight smaller path simplices, where each cube is now 1/8 of the original cubes’ volume.

An example of our input structure is shown in Figure 1. This was generated using the victory(conformal) process mode export.

 Figure 1. Victory(conformal) process mode example export.

Global

The uniform refinement syntax is:

export victory(conformal) structure=”global.str” max.size=0.25

This will refine until all elements within the mesh have a maximum feature size of 0.25 microns. The feature size is defined to be the radius of the circumsphere of the elements (tetrahedra). An example is shown in Figure 2.

 Figure 2. Victory (conformal) export with max.size refinement.

Shape

The shape refinement can be used to specify a 3D cuboid within which the mesh will be refined. The syntax is:

export victory(conformal) structure=”box.str” \
box.min=”5, 5, 3” box.max=”7, 7, 2” max.box.size = 0.175

In this case we have a box from (5, 5, -3) to (7, 7, -2). Unlike the Delaunay refinement, it is necessary to create grading elements outside of the refined section. The grading elements are calculated automatically, and will result in a small level of refinement outside of the given box. This is to maintain the mesh quality between refined/non-refined mesh regions.

It should also be noted that grading elements can only occur in perfect path simplex cubes (six tetrahedra forming the cube). If the box refinement is close to an interface, the algorithm may need to refine the interface in order to ensure smooth grading levels. An example of the box refinement is shown in Figure 3.

 Figure 3. Victory(conformal) box refinement example.

Cone, cylinder and sphere refinement are also supported. The respective export commands are:

export victory(conformal) structure=”cone.str” \
cone.start=”6.5, 6.5, 1.0” cone.end=”6.5, 6.5, 4” \

export victory(conformal) structure=”cylinder.str” \
cylinder.start=”6.5, 6.5, 1.0” cylinder.end=”6.5, 6.5, 4”\
export victory(conformal) structure=”sphere.str” \
sphere.center=”6.5, 6.5, 1.0” \

Interface

The interface refinement syntax is:

export victory(conformal)structure=”interface.str” \
distance.interface material=”SiliconDioxide” \
max.interface.size=0.1

In this case the elements at the interface of Silicon Dioxide will be refined until they have a maximum feature size of 0.1 microns. An example of the interface refinement is given in Figure 4.

 Figure 4. Victory(conformal) interface refinement example.

Junction

The junction refinement specifies the maximum feature size for elements that have a minimum containment center with zero distance from the junction. An example of junction refinement is shown in Figure 5.

 Figure 5. Victory(conformal) junction refinement example.

Delaunay and Conformal Comparison

The conformal export already provides a means to refine regions of the mesh through the placement of the volume planes. However, in many cases regular refinement is insufficient. The refinement schemes demonstrated in this document allow refinement of localized regions, without the requirement to refine along an entire axis plane. However, the placement of the volume planes is paramount to achieve a quality refined mesh. In this section we will demonstrate how the volume planes should be placed to achieve refinement in regions of interest.

The following conditions must be taken into account when using the structured conformal refinement:

1. In a conformal mesh, assuming no interfaces, a single block (path simplex), is comprised of 6 tetrahedra. A single refinement level subdivides each edge once. The 6 tetrahedra become 48.
2. We only place vertices on edges (i.e. subdivide). In comparison, the unstructured Delaunay refinement will place vertices inside tetrahedra.
3. The user must be careful where the initial volume planes are placed in order to ensure sufficient volume to grade within (further details on this point are given below).
4. If we wish for refinement along an entire axis plane, the best option is to use a volume plane. If we wish for refinement along a junction or interface, the volume planes must be placed to ensure the refinement can grade correctly.

In Figure 6 and 7, an example of the unstructured Delaunay junction refinement, in comparison to the structured conformal junction refinement on the same device, is shown.

 Figure 6. Structured conformal junction refinement.

 Figure 7. Unstructured Delaunay junction refinement.

The export statements used were:

export victory(conformal) structure=”conformal.str” \
max.junction.size=0.4

export victory(delaunay) structure=”delaunay.str” \
max.junction.size=0.4 max.junction.distance=9.5 \
max.size=2