[Fluent Inc. Logo] return to home search
next up previous contents index

11.3.2 Dynamic Mesh Update Methods

Three groups of mesh motion methods are available in FLUENT to update the volume mesh in the deforming regions subject to the motion defined at the boundaries:

Note that you can use FLUENT's dynamic mesh models in conjunction with hanging node adaption, with the exception of dynamic layering and face remeshing. For more information on hanging node adaption, see Section  26.2.1.



Spring-Based Smoothing Method


In the spring-based smoothing method, the edges between any two mesh nodes are idealized as a network of interconnected springs. The initial spacings of the edges before any boundary motion constitute the equilibrium state of the mesh. A displacement at a given boundary node will generate a force proportional to the displacement along all the springs connected to the node. Using Hook's Law, the force on a mesh node can be written as


 \vec{F}_i = \sum_j^{n_i} k_{ij}\left(\Delta\vec{x}_j - \Delta\vec{x}_i\right) (11.3-1)

where $\Delta\vec{x}_i$ and $\Delta\vec{x}_j$ are the displacements of node $i$ and its neighbor $j$, $n_i$ is the number of neighboring nodes connected to node $i$, and $k_{ij}$ is the spring constant (or stiffness) between node $i$ and its neighbor $j$. The spring constant for the edge connecting nodes $i$ and $j$ is defined as


 k_{ij} = {1\over \sqrt{\mid \vec{x}_i - \vec{x}_j\mid}} (11.3-2)

At equilibrium, the net force on a node due to all the springs connected to the node must be zero. This condition results in an iterative equation such that


 \Delta \vec{x}_i^{m+1} = {\sum_j^{n_i} k_{ij}\Delta \vec{x}^{m}_j \over \sum_j^{n_i} k_{ij}} (11.3-3)

Since displacements are known at the boundaries (after boundary node positions have been updated), Equation  11.3-3 is solved using a Jacobi sweep on all interior nodes. At convergence, the positions are updated such that


 \vec{x}_i^{n+1} = \vec{x}_i^{n} + \Delta \vec{x}_i^{m,{\rm converged}} (11.3-4)

where $n+1$ and $n$ are used to denote the positions at the next time step and the current time step, respectively. The spring-based smoothing is shown in Figures  11.3.1 and 11.3.2 for a cylindrical cell zone where one end of the cylinder is moving.

Figure 11.3.1: Spring-Based Smoothing on Interior Nodes: Start
figure

Figure 11.3.2: Spring-Based Smoothing on Interior Nodes: End
figure

Applicability of the Spring-Based Smoothing Methods

You can use the spring-based smoothing method to update any cell or face zone whose boundary is moving or deforming.

For non-tetrahedral cell zones (non-triangular in 2D), the spring-based method is recommended when the following conditions are met:

If these conditions are not met, the resulting cells may have high skewness values, since not all possible combinations of node pairs in non-tetrahedral cells (or non-triangular in 2D) are idealized as springs.

By default, spring-based smoothing on non-triangular or non-tetrahedral cell zones are turned off. If you want to use spring-based smoothing on all cell shapes, you can turn on the model for these zones using the spring-on-all-shapes? text-interface command:

define $\rightarrow$ models $\rightarrow$ dynamic-mesh-controls $\rightarrow$

smoothing-parameter $\rightarrow$ spring-on-all-shapes?



Laplacian Smoothing Method


Laplacian smoothing is the most commonly used and the simplest mesh smoothing method. This method adjusts the location of each mesh vertex to the geometric center of its neighboring vertices. This method is computationally inexpensive but it does not guarantee an improvement on mesh quality, since repositioning a vertex by Laplacian smoothing can result in poor quality elements. To overcome this problem, FLUENT only relocates the vertex to the geometric center of its neighboring vertices if and only if there is an improvement in the mesh quality (i.e., the skewness has been improved).

This improved Laplacian smoothing can be enabled on deforming boundaries only (i.e., the zone with triangular elements in 3D and zones with linear elements in 2D). The computation of the node positions works as follows:


 \overline{\overrightarrow{x}^m_i} = \frac{\sum_j^{n_{\rm i}} \overrightarrow{x}^m_j}{n_i} (11.3-5)

where $\overline{\overrightarrow{x}^m_i}$ is the averaged node position of node $i$ at iteration $m$, $\overrightarrow{x}^m_j$ is the node position of neighbor node of $\overrightarrow{x}^m_i$ at iteration $m$, and $n_i$ is the number nodes neighboring node $i$. The new node position $\overrightarrow{x}^{m+1}_i$ is then computed as follows:


 \overrightarrow{x}^{m+1}_i = \overrightarrow{x}^m_i (1 - \beta) + \overline{\overrightarrow{x}^m_i} \beta (11.3-6)

where $\beta$ is the boundary node relaxation factor.

This update only happens if the maximum skewness of all faces adjacent to $\overrightarrow{x}^{m+1}_i$ is improved in comparison to $\overrightarrow{x}^m_i$.



Boundary Layer Smoothing Method


The boundary layer smoothing method is used to deform the boundary layer during a moving-deforming mesh simulation. For cases that have a Mesh Motion UDF (Section  11.7.2) applied to a face zone with adjacent boundary layers, the boundary layer will deform according to the UDF that is applied to the face zone. This smoothing method preserves the height of each boundary layer and can be applied to boundary layer zones of all mesh types (wedges and hexahedra in 3D, quadrilaterals in 2D).

Consider the example below, where a UDF of the form DEFINE_GRID_MOTION provides the moving-deforming mesh model with the locations of the nodes located on the compliant strip on an idealized airfoil. The node motion varies sinusoidally (Figures  11.3.5 and 11.3.6), both in time and space as seen by the deformation of the face zone and the respective boundary layer. A deforming flag is set on the adjacent cell zone, such that the cells adjacent to the deforming wall will also be deformed, in order to avoid skewness. Compare the original mesh (Figure  11.3.3) prior to applying the Mesh Motion UDF to that mesh whose boundary layer has been deformed (Figure  11.3.5).

Figure 11.3.3: The Mesh Prior to Applying Boundary Layer Smoothing
figure

Figure 11.3.4: Zooming into the Mesh of the Compliant Strip Prior to Applying Boundary Layer Smoothing
figure

Figure 11.3.5: The Mesh After Applying Boundary Layer Smoothing
figure

Figure 11.3.6: Zooming into the Deformed Boundary Layer of the Compliant Strip
figure

To find out how to set up a deforming boundary layer for smoothing, refer to Section  11.7.2.



Dynamic Layering Method


In prismatic (hexahedral and/or wedge) mesh zones, you can use dynamic layering to add or remove layers of cells adjacent to a moving boundary, based on the height of the layer adjacent to the moving surface. The dynamic mesh model in FLUENT allows you to specify an ideal layer height on each moving boundary. The layer of cells adjacent to the moving boundary (layer $j$ in Figure  11.3.7) is split or merged with the layer of cells next to it (layer $i$ in Figure  11.3.7) based on the height ( $h$) of the cells in layer $j$.

Figure 11.3.7: Dynamic Layering
figure

If the cells in layer $j$ are expanding, they cell heights are allowed to increase until


 h_{\rm min} > (1 + \alpha_s) h_{\rm ideal} (11.3-7)

where $h_{\rm min}$ is the minimum cell height of cell layer $j$, $h_{\rm ideal}$ is the ideal cell height, and $\alpha_s$ is the layer split factor. When this condition is met, the cells are split based on the specified layering option: constant height or constant ratio.

With the constant height option, the cells are split to create a layer of cells with constant height $h_{\rm ideal}$ and a layer of cells of height $h - h_{\rm ideal}$. With the constant ratio option, the cells are split such that locally, the ratio of the new cell heights is exactly $\alpha_s$ everywhere. Figures  11.3.8 and 11.3.9 shows the result of splitting a layer of cells above a valve geometry using the constant height and constant ratio option.

Figure 11.3.8: Results of Splitting Layer By Constant Height
figure

Figure 11.3.9: Results of Splitting Layer By Constant Ratio
figure

If the cells in layer $j$ are being compressed, they can be compressed until


 h_{\rm min} < \alpha_c h_{\rm ideal} (11.3-8)

where $\alpha_c$ is the layer collapse factor. When this condition is met, the compressed layer of cells is merged into the layer of cells above the compressed layer; i.e., the cells in layer $j$ are merged with those in layer $i$.

Applicability of the Dynamic Layering Method

You can use the dynamic layering method to split or merge cells adjacent to any moving boundary provided the following conditions are met:

If the moving boundary is an internal zone, cells on both sides (possibly with different ideal cell layer heights) of the internal zone are considered for dynamic layering.

If you want to use dynamic layering on cells adjacent to a moving wall that do not span from boundary to boundary, you must separate those cells which are involved in the dynamic layering and use the sliding interfaces capability in FLUENT to transition from the deforming cells to the adjacent non-deforming cells (see Figure  11.3.10). For a moving interior face, the zones must be separated such that they are either expanding or collapsing on the same side. No one zone can consist of both expanding and collapsing layers.

Figure 11.3.10: Use of Sliding Interfaces to Transition Between Adjacent Cell Zones and the Dynamic Layering Cell Zone
figure



Remeshing Methods


On zones with a triangular or tetrahedral mesh, the spring-based smoothing method (described in Section  11.3.2) is normally used. When the boundary displacement is large compared to the local cell sizes, the cell quality can deteriorate or the cells can become degenerate. This will invalidate the mesh (e.g., result in negative cell volumes) and consequently, will lead to convergence problems when the solution is updated to the next time step.

To circumvent this problem, FLUENT agglomerates cells that violate the skewness or size criteria and locally remeshes the agglomerated cells or faces. If the new cells or faces satisfy the skewness criterion, the mesh is locally updated with the new cells (with the solution interpolated from the old cells). Otherwise, the new cells are discarded.

FLUENT includes several remeshing methods that include local remeshing, local face remeshing (for 3D flows only), face region remeshing, and 2.5D surface remeshing (for 3D flows only). The available remeshing methods in FLUENT work for triangular-tetrahedral zones and mixed zones where the non-triangular/tetrahedral elements are skipped. The exception is the 2.5D model, where the available remeshing method only work on wedges extruded from triangular surfaces or hex meshes.

Local Remeshing Method

Using the local remeshing method, FLUENT marks cells based on cell skewness and minimum and maximum length scales as well as an optional sizing function.

FLUENT evaluates each cell and marks it for remeshing if it meets one or more of the following criteria:

Face Region Remeshing Method

In addition to remeshing the volume mesh, FLUENT also allows triangular and linear faces on a deforming boundary to be remeshed. FLUENT marks deforming boundary faces for remeshing based on moving and deforming loops of faces.

For face region remeshing, FLUENT marks the region of faces on the deforming boundaries at the moving boundary based on minimum and maximum length scales. Once marked, FLUENT remeshes the faces and the adjacent cells to produce a very regular mesh on the deforming boundary at the moving boundary (e.g., Figure  11.3.11). Using this method, FLUENT is able to remesh across multiple face zones.

For 3D simulations, FLUENT allows remeshing with symmetric boundary conditions, and across multiple face zones which includes preserving features not only between the different face zones, but also within a face zone. For more information, see Section  11.3.2.

FLUENT automatically extracts loops on the boundary of the face zone whose nodes are moving or deforming. Consider a simple tetrahedral mesh of a cylinder whose bottom wall is moving (see Figure  11.3.11). On the deforming boundary, a single loop is generated at the bottom end of the cylinder (where the nodes are moving). FLUENT analyzes the height of the faces connected to the nodes on the loop and subsequently, splits or merges the faces depending on the specified maximum or minimum length scale.

Figure 11.3.11: Remeshing at a Deforming Boundary
figure

If the faces in layer $j$ are expanding, they are allowed to expand until the maximum length scale is reached.

Conversely, if the layer is contracting, they are allowed to contract until the minimum length scale is reached.

When this condition is met, the compressed layer of faces is merged into the layer of faces above it. The face remeshing is illustrated in Figure  11.3.13.

Figure 11.3.12: Expanding Cylinder Before Region Face Remeshing
figure

Figure 11.3.13: Expanding Cylinder After Region Face Remeshing
figure

Applicability of the Face Region Remeshing Method

You can use the local remeshing method only in cell zones that contain tetrahedral or triangular cells.

If you define deforming face zones in your model and you use local remeshing in the adjacent cell zone, the faces on the deforming face zone can be remeshed only if the following conditions are met:

Local Face Remeshing Method

The local face remeshing method only applies to 3D geometries. Using this method, FLUENT marks the faces (and the adjacent cells) on the deforming boundaries based on the face skewness. Using this method, FLUENT is able to remesh locally at deforming boundaries, however, you are not able to remesh across multiple face zones.

Applicability of the Local Face Remeshing Method

If you define deforming face zones in your model and you use local face remeshing in the adjacent cell zone, the faces on the deforming face zone can be remeshed only if the following conditions are met:

2.5D Surface Remeshing Method

The 2.5D surface remeshing method only applies to extruded 3D geometries and is similar to local remeshing in two dimensions on a triangular surface mesh (not a mixed zone). Faces on a deforming boundary are marked for remeshing based on face skewness, minimum and maximum length scale and an optional sizing function.

Figure 11.3.14: Close-Up of 2.5D Extruded Flow Meter Pump Geometry Before Remeshing and Laplacian Smoothing
figure

Figure 11.3.15: Close-Up of 2.5D Extruded Flow Meter Pump Geometry After Remeshing and Laplacian Smoothing
figure

Applicability of the 2.5D Surface Remeshing Method

The following applies to the 2.5D surface remeshing method:



Local Remeshing Based on Size Functions


Instead of marking cells based on minimum and maximum length scales, FLUENT also marks cells based on the size distribution generated by the sizing function if the Sizing Function option under Options is enabled.

Local remeshing using size functions can be used with the following remeshing methods:

Figure  11.3.17 demonstrates the advantages of using size functions for local remeshing:

Figure 11.3.16: Grid at the End of a Dynamic Mesh Simulation Without Size Functions
figure

Figure 11.3.17: Grid at the End of a Dynamic Mesh Simulation With Size Functions
figure

In determining the sizing function, FLUENT draws a bounding box around the zone that is approximately twice the size of the zone, and locates the shortest feature length within each fluid zone. FLUENT then subdivides the bounding box based on the shortest feature length and the Size Function Resolution that you specify. This allows FLUENT to create a background grid.

You control the resolution of the background grid and a background grid is created for each fluid zone. The shortest feature length is determined by shrinking a second box around the object, and then selecting the shortest edge on that box. The size function is evaluated at the vertex of each individual background grid.

Figure 11.3.18: Size Function Determination at Background Grid Vertex I
figure

As seen in Figure  11.3.18, the local value of the size function $SF_I$ is defined by


 SF_I = \left(\frac{\Sigma{\frac{1}{{D}_{J}}{\Delta{s}_{J}}}}{\Sigma{\frac{1}{{D}_{J}}}}\right) (11.3-9)

where $D_J$ is the distance from vertex $I$ on the background grid to the centroid of boundary cell $J$ and $\Delta{s}_{J}$ is the mesh size (length) of boundary cell $J$.

The size function is then smoothed using Laplacian smoothing. FLUENT then interpolates the value of the size function by calculating the distance $L_I$ from a given cell centroid $P$ to the background grid vertices that surround the cell (see Figure  11.3.19). The intermediate value of the size function $size_b$ at the centroid is computed from


 size_b = \left(\frac{\Sigma {SF}_{I} \frac{1}{{L}_{I}}}{\Sigma \frac{1}{{L}_{I}}}\right) (11.3-10)

Figure 11.3.19: Interpolating the Value of the Size Function
figure

Next, a single point $Q$ is located within the domain (see Figure  11.3.20) that has the largest distance $d_{\rm max}$ to the nearest boundary to it. The normalized distance $d_b$ for the given centroid $P$ is given by


 d_b = \frac{d_{\rm min}^P}{d_{\rm max}} (11.3-11)

Figure 11.3.20: Determining the Normalized Distance
figure

Using the parameters $\alpha$ and $\beta$ (the Size Function Variation and the Size Function Rate, respectively), you can write the final value $size_P$ of the size function at point $P$ as


 size_P = size_b \times (1 + \alpha \times d_b^{1+2\beta}) = size_b \times \gamma (11.3-12)

where $size_b$ is the intermediate value of the size function at the cell centroid.

Note that $\alpha$ is the size function variation. Positive values mean that the cell size increases as you move away from the boundary. Since the maximum value of $d_b$ is one, the maximum cell size becomes


 size_{\rm P,max} = size_b \times (1 + \alpha) = size_b \times \gamma_{\rm max} (11.3-13)

thus, $\alpha$ is really a measure of the maximum cell size.

The factor $\gamma$ is computed from


 \gamma = 1 + \alpha d_b^{1 + 2\beta} \quad\quad \mbox{if}~\alpha > 0 \\ (11.3-14)


 \gamma = 1 + \alpha d_b^{1 \over 1 - \beta} \quad\quad \mbox{if}~\alpha < 0 (11.3-15)

You can use Size Function Variation (or $\alpha$) to control how large or small an interior cell can be with respect to its closest boundary cell. $\alpha$ ranges from $-1$ to $\infty$, an $\alpha$ value of 0.5 indicates that the interior cell size can be, at most, 1.5 the size of the closest boundary cell. Conversely, an $\alpha$ value of $-0.5$ indicates that the cell size interior of the boundary can be half of that at the closest boundary cell. A value of 0 indicates a constant size distribution away from the boundary.

You can use Size Function Rate (or $\beta$) to control how rapidly the cell size varies from the boundary. The value of $\beta$ should be specified such that $-0.99<\beta<+0.99$. A positive value indicates a slower transition from the boundary to the specified Size Function Variation value. Conversely, a negative value indicates a faster transition from the boundary to the Size Function Variation value. A value of 0 indicates a linear variation of cell size away from the boundary.

You can also control the resolution of the sizing function with Size Function Resolution. The resolution determines the size of the background bins used to evaluate the size distribution with respect to the shortest feature length of the current mesh. By default, the Size Function Resolution is 3 in 2D problems, and 1 in 3D problems.

A set of default values (based on the current mesh) is automatically generated if you click Use Defaults.

In summary, the sizing function is a distance-weighted average of all mesh sizes on all boundary faces (both stationary and moving boundaries). The sizing function is based on the sizes of the boundary cells, with the size computed from the cell volume by assuming a perfect (equilateral) triangle in 2D and a perfect tetrahedron in 3D. You can control the size distribution by specifying the Size Function Variation and the Size Function Rate. If you have enabled the Sizing Function option, FLUENT will agglomerate a cell if


 size \not\in \left[ \frac{4}{5} \gamma size_b, \frac{5}{4} \gamma size_b \right] (11.3-16)

where $\gamma$ is a factor defined by Equation  11.3-14 and Equation  11.3-15.

Note that the size function is only used for marking cells before remeshing. The size function is not used to govern the size of the cell during remeshing.



Feature Detection


For 3D simulations, FLUENT allows you to preserve features on deforming zones not only between the different face zones, but also within a face zone.

In the Geometry Definition tab of the Dynamic Mesh Zones panel, for any geometry definition, you can indicate whether you want to include features of a specific angle by selecting Include Features under Feature Detection and setting the Feature Angle (the zonal feature angle $\alpha$) in degrees. If the angle $\beta$ between adjacent faces is bigger than the specified angle, then the feature is recognized (i.e., $\cos (\beta) < \cos (\alpha)$).

Applicability of Feature Detection

The following items are applicable for use with feature detection:


next up previous contents index Previous: 11.3.1 Overview
Up: 11.3 Dynamic Mesh Theory
Next: 11.3.3 Volume Mesh Update
© Fluent Inc. 2006-09-20