Never miss a story from Computational Fluid Dynamics. Subscribe for in-depth analysis and articles.
The goal of simulation preprocessing is to create a mesh that is suitable for the required analysis. We aim for computational efficiency when generating a mesh that resolves both geometry and physics. Based on our simulation expectations, we can enhance specific mesh areas where a smaller flow feature is expected. In the image below, refinement zones have been added around the vehicle because we anticipate a lot of physics, particularly in the wake region. This process demands considerable domain expertise and depends on the user’s input. Over-refinement in regions with minimal flow physics would increase the computation costs and simulation time, which is undesirable. This blog will elaborate on the automated adaptive grid refinement feature in Fidelity Pointwise that manages numerical errors and adheres to user-defined boundaries while resolving all flow features for diverse applications.
Refinement zone around the vehicle
The mesh should:
In adaptative grid refinement, we expect the boundary layer and the near-wall physics to be preserved, and there is smooth gradation in cell sizes, ensuring solver convergence. During adaptation grid refinement, it is necessary to define an adaptation sensor, describing the regions that require additional refinement. For external aircraft studies, the Mach number is a suitable adaptation variable, while in turbomachinery applications, the velocity magnitude makes for a good adaptation sensor.
A baseline mesh is created to initiate adaptive grid refinement in the Fidelity Pointwise. Then, a solution is run on this mesh. The sensor is evaluated at each edge, and adaptation is flagged if it exceeds a predetermined threshold at a specific location. A point cloud is created with the location of points and a new targeted cell size for that area. This point cloud is then integrated into the baseline mesh in the Fidelity Pointwise to create an updated mesh. This process is iterative until the solution reaches a mesh-independent state.
Mesh adaptation cycle in Fidelity Pointwise
Boundary conditions for the Impinging jet
In the above figure, a cold jet descends onto a hot plate, and the boundary conditions are illustrated.
Baseline mesh (left), initial mesh (right)
Here, the objective is to compare a fully structured mesh to an adapted one. In the figure above, the image on the left displays the baseline hexahedron mesh, while the image on the right depicts the initial unstructured mesh that will be adapted to the velocity magnitude.
Contours of velocity magnitude (left) and adaptation edge scaling (right)
The scaling required for the current edge lane is indicated in the image on the right. The primary focus of the adaptation process is the area between the jet and the plate. A point cloud has been created from the solution, and 25% of the nodes have exceeded the threshold and will be adapted accordingly.
Initial Point Cloud with 25% of nodes marked for adaptation
Around 70% of the nodes were marked for adaptation during the fifth cycle, while 94% were marked during the final cycle. Once around 90% of the nodes are marked for adaptation, it's considered to have converged. This would be a good stopping point for the iterations.
Adapted meshes during the 5th cycle (left) and the 9th cycle (right)
Upon examination of the mesh statistics, it was observed that the modified mesh had fewer nodes and elements than the highly refined hex mesh. Upon zooming in on the impingement region, it becomes apparent that the initial mesh did not accurately capture the data. However, the mesh improved with each cycle and eventually got closer to the experimental data.
Nusselt number (Nu) gets closer to the experimental Nu value with each adaptation cycle
Here, the test case is an Aachen Turbine with 41 blades, rotating at a speed of 3500 RPM. The inlet and outlet flow conditions are tabulated below:
135,000 Pa (average)
Initial adapted mesh (left), final adapted mesh - a cut section of the blade region (right)
Here again, the velocity magnitude is used as the adaptation variable. The shocks are clearly visible in the adapted mesh. Furthermore, the final adapted mesh accurately represents the presence of secondary vortices and shocks.
Secondary vortices were captured in the adapted mesh.
Adaptive grid refinement can be applied to automotive applications, too, and here, the DrivAer model is used as the test case. The velocity magnitude is defined as the adaptation variable in this scenario. A RANS simulation of the DrivAer model uses the SST two-equation turbulence model. The adapted mesh and the streamlines of the wake region are shown below, displaying a good match and an accurate capture of the vortices.
Adapted mesh for the DrivAer model.
DLR F6 model.
The test case is the DLR F6 model from the second AIAA drag prediction workshop. Mach number of 0.75 and 1° angle of attack are the flow conditions. Here, the adaptation variable is the Mach number. The shockwaves on the top of the wing are clearly visible with adaptive grid refinement. The initial surface pressure and the adapted surface pressure are depicted in the figure below. The shocks become crisper with each adaptation cycle.
Surface pressure from initial mesh (left) and adapted mesh (right)
Looking at the coefficient of lift and drag, it can be observed that with each cycle, the refinement becomes more precise. This mesh adaptation approach can be easily integrated into any workflow.
Although it initially requires some effort to set up, it becomes user-independent once established. A consistent topology is maintained during the adaptation cycle as the cycle returns to the baseline mesh.
Lift and drag coefficient during the adaptation cycles
Watch the on-demand recording to learn how to automatically generate the best mesh each time with Adaptive Grid Refinement in Fidelity Pointwise.