非構造格子
Theory and Physics
Overview
Professor, what makes unstructured grids so convenient?
An unstructured grid (unstructured mesh) is a grid that explicitly stores the connectivity relationships between cells as a table. It allows different cell shapes like tetrahedra (tet), hexahedra (hex), triangular prisms (prism/wedge), and pyramids to be freely mixed. Its biggest advantage is that it enables automatic mesh generation for complex 3D shapes.
So you mean if you throw a CAD model in, it automatically creates a mesh?
Pretty much. Modern CFD meshers like Fluent Meshing, STAR-CCM+, and snappyHexMesh can automatically generate volume meshes just by inputting an STL surface. This is the reason why unstructured grids have become overwhelmingly popular in industry.
Delaunay Triangulation
How does the automatic mesh generation algorithm work?
The most basic one is Delaunay triangulation. For a given set of points, it constructs triangles such that no other point lies inside the circumcircle of any triangle.
Writing the Delaunay condition mathematically, for a triangle $T$ and its circumcircle $C(T)$:
Satisfying this condition maximizes the minimum angle among the triangles. In other words, you get a mesh that is as close as possible to "equilateral triangles".
What about in 3D?
In 3D, it becomes Delaunay tetrahedralization. The circumcircle is replaced by a circumsphere. However, in 3D, quality guarantees are not as effective as in 2D, and sliver tetrahedra (flat tetrahedra) tend to occur. Sliver removal is an important challenge in 3D automatic mesh generation.
Advancing Front Method
Another major algorithm is the Advancing Front method. It "extrudes" elements from the boundary surface towards the interior.
1. Initialize the surface mesh on the boundary as the "front"
2. Select a face on the front, generate a new point, and create an element
3. Update the front (remove old faces, add new faces)
4. Repeat until the front disappears
What's the difference from the Delaunay method?
The Advancing Front method has high boundary conformity and tends to produce good mesh quality near boundaries. On the other hand, the Delaunay method is more robust and easier to implement. In actual tools, hybrid algorithms combining both are often used.
Relationship with Finite Volume Method
How do you discretize the Navier-Stokes equations on an unstructured grid?
We use the Finite Volume Method (FVM). It applies the conservation law in integral form to each cell.
The flux $\mathbf{F} \cdot d\mathbf{S}$ passing through the cell face is evaluated numerically. Unlike structured grids, the grid is irregular, so methods like Gauss-Green or least squares are needed to reconstruct gradients between cell centers.
What about accuracy?
The finite volume method on unstructured grids is basically standard second-order accuracy. This is because values at faces are linearly interpolated from cell center values and gradients. If the grid non-orthogonality is large, a non-orthogonal correction term is needed, which affects both convergence and accuracy.
History of Unstructured Grid CFD—The Era Opened by the 1987 Jameson-Baker Paper
The practical application of CFD using unstructured meshes accelerated when Antony Jameson and his collaborators published "Finite Volume Method for Euler Equations on Unstructured Triangular Meshes" in 1987. Before that, structured meshes were mainstream in aerospace CFD, requiring experts to spend months generating meshes for complex shapes. Jameson et al.'s method enabled mesh generation independent of shape complexity, becoming a technological turning point that advanced the "democratization of CFD." Combined with the acceleration of computers in the 1990s, unstructured grid CFD spread rapidly, and all major modern CFD solvers (Fluent, OpenFOAM, SU2, etc.) adopt unstructured grids as their basic architecture.
Physical Meaning of Each Term
- Temporal Term $\partial(\rho\phi)/\partial t$: Imagine the moment you turn on a faucet. At first, water comes out in an unstable, splashing manner, but after a while, it becomes a steady flow, right? This "period of change" is described by the temporal term. The pulsation of blood flow due to heartbeats, or flow fluctuations each time an engine valve opens/closes—all are unsteady phenomena. So what is steady-state analysis? It looks only at "after sufficient time has passed and the flow has settled down"—meaning setting this term to zero. Since computational cost drops significantly, starting with a steady-state solution is a basic CFD strategy.
- Convection Term $\nabla \cdot (\rho \mathbf{u} \phi)$: What happens if you drop a leaf into a river? It gets carried downstream by the flow, right? This is "convection"—the effect where fluid motion transports things. Warm air from a heater reaching the far corner of a room is also because the "carrier," air, transports heat via convection. Here's the interesting part—this term contains "velocity × velocity," making it nonlinear. That is, as the flow becomes faster, this term rapidly strengthens, making control difficult. This is the root cause of turbulence. A common misconception: "Convection and conduction are similar" → They are completely different! Convection is carried by flow, conduction is transmitted by molecules. There's an order of magnitude difference in efficiency.
- Diffusion Term $\nabla \cdot (\Gamma \nabla \phi)$: Have you ever left milk in coffee without stirring? Even without mixing, after a while, they naturally blend. That's molecular diffusion. Now a question—honey and water, which flows easier? Obviously water, right? Honey has high viscosity ($\mu$), so it flows poorly. Higher viscosity strengthens the diffusion term, making the fluid move "sluggishly." In low Reynolds number flows (slow, viscous), diffusion dominates. Conversely, in high Re flows, convection overwhelms and diffusion plays a supporting role.
- Pressure Term $-\nabla p$: When you push the plunger of a syringe, liquid shoots out forcefully from the needle tip, right? Why? Because the piston side is high pressure, the needle tip is low pressure—this pressure difference provides the force pushing the fluid. Dam discharge works on the same principle. On a weather map, where isobars are tightly packed? That's right, strong winds blow. "Flow arises where there is a pressure difference"—this is the physical meaning of the pressure term in the Navier-Stokes equations. A common misunderstanding here: "Pressure" in CFD is often gauge pressure, not absolute pressure. If results go wrong immediately after switching to compressible analysis, confusion between absolute/gauge pressure might be the cause.
- Source Term $S_\phi$: Warmed air rises—why? Because it becomes lighter (lower density) than its surroundings, so buoyancy pushes it up. This buoyancy is added to the equation as a source term. Other examples: chemical reaction heat generated by a gas stove flame, Lorentz force acting on molten metal in a factory's electromagnetic pump... These are all actions that "inject energy or force into the fluid from outside," expressed by the source term. What happens if you forget the source term? In natural convection analysis, forgetting buoyancy means the fluid doesn't move at all—a physically impossible result where warm air doesn't rise in a room with the heater on in winter.
Assumptions and Applicability Limits
- Continuum Assumption: Valid for Knudsen number Kn < 0.01 (mean free path ≪ characteristic length)
- Newtonian Fluid Assumption: Shear stress and strain rate have a linear relationship (non-Newtonian fluids require viscosity models)
- Incompressibility Assumption (for Ma < 0.3): Treat density as constant. For Mach number ≥ 0.3, consider compressibility effects
- Boussinesq Approximation (Natural Convection): Consider density changes only in the buoyancy term, using constant density in other terms
- Non-applicable Cases: Rarefied gases (Kn > 0.1), supersonic/hypersonic flows (requires shock capturing), free surface flows (requires VOF/Level Set, etc.)
Dimensional Analysis and Unit Systems
| Variable | SI Unit | Notes / Conversion Memo |
|---|---|---|
| Velocity $u$ | m/s | When converting from volumetric flow rate for inlet conditions, pay attention to cross-sectional area units |
| Pressure $p$ | Pa | Distinguish between gauge and absolute pressure. Use absolute pressure for compressible analysis |
| Density $\rho$ | kg/m³ | Air: approx. 1.225 kg/m³ @20°C, Water: approx. 998 kg/m³ @20°C |
| Viscosity Coefficient $\mu$ | Pa·s | Be careful not to confuse with kinematic viscosity $\nu = \mu/\rho$ [m²/s] |
| Reynolds Number $Re$ | Dimensionless | $Re = \rho u L / \mu$. Indicator for laminar/turbulent transition |
| CFL Number | Dimensionless | $CFL = u \Delta t / \Delta x$. Directly related to time step stability |
Numerical Methods and Implementation
Cell Shape Comparison
There are tetrahedra, hexahedra, prisms... How are they different?
Let's compare the main cell shapes used in CFD.
| Cell Shape | Number of Faces | Number of Adjacent Cells | Accuracy | Ease of Auto-Generation |
|---|---|---|---|---|
| Tetrahedron (Tet) | 4 | 4 | Low–Medium (High numerical diffusion) | Very Easy |
| Hexahedron (Hex) | 6 | 6 | High (Low numerical diffusion) | Difficult (Requires structured grid) |
| Triangular Prism (Prism) | 5 | 5 | Medium–High | Can be auto-generated for boundary layers |
| Pyramid | 5 | 5 | Medium | For hex/tet connection |
| Polyhedral | Many | Many | Medium–High | Conversion from tets |
What does it mean that tetrahedra have high numerical diffusion?
Tetrahedra have fewer faces, resulting in lower diversity of direction vectors from the cell center to each face. This reduces gradient approximation accuracy and increases numerical diffusion when evaluating fluxes in oblique directions. For the same number of cells, hexahedra are often 2–3 times more accurate.
Gradient Reconstruction Methods
Gradient calculation is special for unstructured grids, right?
Exactly. There are three main methods.
Green-Gauss Method
Calculates gradient from face values $\phi_f$. Includes cell-based and node-based methods depending on how face values are evaluated.
Least-Squares Method (Least-Squares)
Finds the best gradient in the least-squares sense from differences with neighboring cells. Robust even on distorted meshes.
Which one should be used in Fluent?
For meshes generated by Fluent Meshing, Green-Gauss Node-Based or Least-Squares is recommended. For tetrahedral meshes, Least-Squares is often more stable.
Non-Orthogonal Correction
How does non-orthogonality affect CFD?
When calculating the diffusion term flux in the finite volume method, it's simple if the vector between cell centers $\mathbf{d}$ and the face normal vector $\mathbf{S}$ are parallel (orthogonal grid), but for non-orthogonal cases, a correction term is needed.
The second term is the non-orthogonal correction term. Treating this explicitly worsens convergence, and if the grid non-orthogonality exceeds 70 degrees, the risk of divergence increases. In OpenFOAM, the nonOrthogonalCorrectors parameter sets the number of iterations for this correction.
So 70 degrees is a guideline.
Yes. As a general guideline, non-orthogonality should be kept below 70 degrees, ideally below 40 degrees. Especially for segregated solvers like OpenFOAM, they are sensitive to non-orthogonality.
Delaunay Triangulation—Mathematical Foundation of Unstructured Mesh Generation and Quality Control
The "Delaunay triangulation," which forms the basis for automatic unstructured triangle/tetrahedral mesh generation, is a triangulation that satisfies the optimality condition: "no other point lies inside the circumcircle." This property maximizes the minimum angle of generated triangles, automatically suppressing elongated elements (high skewness) that are problematic in CFD. A mathematical concept proposed by Boris Delaunay in 1934 was rediscovered as a mesh generation algorithm in the computer age 50 years later, becoming the core of modern unstructured mesh generation software. Modern core algorithms in tools like TetGen, netgen, and TetMeshGC combine "Constrained Delaunay" methods for controlling element size on boundaries with Point Insertion for mesh quality improvement.
Upwind Scheme (Upwind)
First-order upwind: High numerical diffusion but stable. Second-order upwind: Improved accuracy but risk of oscillations. Essential for high Reynolds number flows.
Central Differencing (Central Differencing)
Second-order accurate, but numerical oscillations occur for Pe number > 2. Suitable for low Reynolds number diffusion-dominated flows.
TVD Schemes (MUSCL, QUICK, etc.)
Maintain high accuracy while suppressing numerical oscillations via limiter functions. Effective for capturing shock waves and steep gradients.
Finite Volume Method vs Finite Element Method
FVM: Naturally satisfies conservation laws. Mainstream in CFD. FEM: Advantageous for complex shapes and multi-physics. Mesh-free methods like SPH are also developing.
CFL Condition (Courant Number)
Explicit methods: CFL ≤ 1 is the stability condition. Implicit methods: Stable even for CFL > 1, but affects accuracy and iteration count. LES: CFL ≈ 1 recommended. Physical meaning: Information should not travel more than one cell per timestep.
Residual Monitoring
なった
詳しく
報告