Turbulent flow over NACA0012 airfoil (2D)
Overview
- Based on https://turbmodels.larc.nasa.gov/naca0012_val.html 53
- References: Gregory-O'Reilly (1970) 21, McCroskey (1987) 47, Ladson (1988) 32, Spalart-Allmaras (1994) 69, and Krist et al. (1997) 29
- See the resources section for additional data files
Flow physics:
- External flow
- Steady
- High Reynolds number
- Low Mach number, subsonic
- Newtonian, single-phase, incompressible, non-reacting
Solver:
Tutorial case:
Physics and Numerics
Physical domain:
- The case is a two-dimensional airfoil located around the centre of a
computational domain whose dimensions are considerably larger than the
chord-length of the airfoil.
- : Longitudinal direction (mean flow direction)
- : Spanwise direction (statistically homogeneous direction)
- : Vertical direction (wall-normal direction)
- : Origin at the leading edge of the airfoil
Physical modelling:
- Reynolds number based on local chord length:
- Streamwise far-field flow speed: [m⋅s<sup>-1</sup>]
- Characteristic length (Local chord length of the airfoil): [m]
- Kinematic viscosity of fluid:
\[m<sup>2</sup>⋅s<sup>-1</sup>\]
- Mach number:
- Speed of sound: [m⋅s<sup>-1</sup>]
- Turbulence model: Spalart Allmaras
Numerical domain modelling:
- Shape: extruded C-grid
- Dimensions: [m]
- Sketch (View direction to -positive):

Spatial domain discretisation:
- Mesh type: hexahedral cells in plot3d format
- Mesh converter: plot3dToFoam
- Number of cells, :
- First wall-normal cell centre height:
- Mesh detail (View direction to -positive):

Equation discretisation:
Spatial derivatives and variables:
- Gradient: Gauss linear
- Divergence:
default: Gausslineardiv(phi,U):bounded Gauss
[linearUpwind](https://doc.openfoam.com/2606/tools/processing/numerics/schemes/divergence/rtm/linearUpwind/) `grad(U)`
div(phi,nuTilda):bounded Gauss linearUpwind grad(nuTilda)- Laplacian:
Gaussian linear corrected - Surface-normal gradient: corrected
Temporal derivatives and variables:
ddtSchemes: steadyState
Numerical boundary conditions:
- Velocity,
| Patch | Condition | Value [m⋅s<sup>-1</sup>] |
|---|---|---|
| Inlet | freestreamVelocity | |
| Outlet | freestreamVelocity | |
| Sides -dir) | empty | - |
| Aerofoil | fixedValue | (0.0, 0.0, 0.0) |
| <b> α </b> | <b> U </b><sub>α</sub> |
|---|---|
| (51.4815, 0.00, 0.0000) | |
| (50.6994, 0.00, 8.9397) | |
| (49.7273, 0.00, 13.3244) |
- Kinematic pressure,
p
| Patch | Condition | Value [m<sup>2</sup>⋅s<sup>-2</sup>] |
|---|---|---|
| Inlet | freestreamPressure | 0.0 |
| Outlet | freestreamPressure | 0.0 |
| Sides -dir) | empty | - |
| Aerofoil | zeroGradient | - |
- Turbulent kinematic viscosity,
nut(i.e. )
| Patch | Condition | Value [m<sup>2</sup>⋅s<sup>-1</sup>] |
|---|---|---|
| Inlet | freestream | 54 |
| Outlet | freestream | 54 |
| Sides -dir) | empty | - |
| Aerofoil | fixedValue | 0.0 54 |
- Spalart-Allmaras model modified viscosity,
nuTilda(i.e. )
| Patch | Condition | Value [m<sup>2</sup>⋅s<sup>-1</sup>] |
|---|---|---|
| Inlet | freestream | 54 |
| Outlet | freestream | 54 |
| Sides -dir) | empty | - |
| Aerofoil | fixedValue | 0.0 54 |
Solution algorithms and solvers:
- Pressure-velocity: SIMPLE
- Parallel decomposition of spatial domain and fields: Not applicable
- Linear solvers:
| Field | Linear Solver | Smoother | Tolerance (rel) |
|---|---|---|---|
U | smooth | GaussSeidel | 0.01 |
p | GAMG | GaussSeidel | 0.01 |
nuTilda | smooth | GaussSeidel | 0.01 |
Results
List of metrics:
- Lift coefficient vs. Angle of attack
- Drag coefficient vs. Angle of attack
- Drag coefficient vs. Lift coefficient
- Surface pressure coefficient vs. Normalised chord length
- Surface skin friction coefficient vs. Normalised chord length
- is the time-averaging operator



![Surface pressure coefficient vs. Normalised chord length at α=0 [degree]](/img/examples/verification-validation/turbulent/naca0012/CP-xc-Alpha-0.png)
![Surface pressure coefficient vs. Normalised chord length at α=10 [degree]](/img/examples/verification-validation/turbulent/naca0012/CP-xc-Alpha-10.png)
![Surface pressure coefficient vs. Normalised chord length at α=15 [degree]](/img/examples/verification-validation/turbulent/naca0012/CP-xc-Alpha-15.png)
![Surface skin friction coefficient vs. Normalised chord length at α=0 [degree]](/img/examples/verification-validation/turbulent/naca0012/CF-xc-Alpha-0.png)
![Surface skin friction coefficient vs. Normalised chord length at α=10 [degree]](/img/examples/verification-validation/turbulent/naca0012/CF-xc-Alpha-10.png)
![Surface skin friction coefficient vs. Normalised chord length at α=15 [degree]](/img/examples/verification-validation/turbulent/naca0012/CF-xc-Alpha-15.png)
Resources
Note: Links will take you to the NASA website
Mesh
Datasets for verifications (plain text)
Lift and drag coefficients vs angle of attack
Pressure distribution vs local chord length
Lift coefficient vs angle of attack
Skin friction coefficient vs local chord length