Spalart-Allmaras Model
Spalart-Allmaras: Theoretical Foundations
Overview
Professor, I heard that the Spalart-Allmaras model is often used in the aerospace field. What kind of model is it?
The Spalart-Allmaras (SA) model is a one-equation model that describes turbulence with just a single transport equation for the modified eddy viscosity $\tilde{\nu}$. It was published by Philippe Spalart and Steven Allmaras in 1992. It was specifically developed for flows around aircraft wings and has become one of NASA's standard turbulence models.
One equation means it's lighter than the two-equation k-epsilon model?
Exactly. With one less transport equation, it has lower computational cost and faster convergence. It has good behavior near walls and demonstrates high accuracy for attached boundary layers and flows under weak adverse pressure gradients.
Governing Equations
Could you please tell me the specific equations?
The transport equation for the modified eddy viscosity $\tilde{\nu}$ is as follows.
The physical meaning of each term is as follows.
| Term | Equation | Physical Meaning |
|---|---|---|
| Production Term | $c_{b1}\tilde{S}\tilde{\nu}$ | Turbulence production due to mean velocity gradient |
| Destruction Term | $c_{w1}f_w(\tilde{\nu}/d)^2$ | Destruction dependent on wall distance $d$ |
| Diffusion Term | $\frac{1}{\sigma}[\nabla\cdot((\nu+\tilde{\nu})\nabla\tilde{\nu}) + c_{b2}(\nabla\tilde{\nu})^2]$ | Molecular diffusion + turbulent diffusion |
Eddy Viscosity Calculation
How do you obtain the eddy viscosity $\nu_t$ from $\tilde{\nu}$?
It is calculated using the damping function $f_{v1}$ as follows.
Near the wall ($\chi \ll 1$), $f_{v1} \to 0$, causing $\nu_t$ to automatically decay. This is a major feature of the SA model, eliminating the need to add a separate Low-Re damping function.
Model Constants
How many constants are there?
The standard constants are as follows.
| Constant | Value | Constant | Value |
|---|---|---|---|
| $c_{b1}$ | 0.1355 | $c_{b2}$ | 0.622 |
| $\sigma$ | 2/3 | $\kappa$ | 0.41 |
| $c_{w1}$ | $c_{b1}/\kappa^2 + (1+c_{b2})/\sigma$ | $c_{w2}$ | 0.3 |
| $c_{w3}$ | 2.0 | $c_{v1}$ | 7.1 |
It looks like there are many constants, but $c_{w1}$ is derived from other constants. So essentially there are about 6 independent constants, right?
Exactly. Moreover, the wall distance $d$ is the only geometric input, and there's no need to solve a separate equation for the turbulent length scale. This is the simplicity of a one-equation model.
"Solving Wings with One Equation" โ The Bet Between Philip and Amir
The SA model published by Philip Spalart and Steven Allmaras in 1992 was designed with the concept of "solving just one transport equation for the eddy viscosity itself." At the time, the CFD community had the preconception that "turbulence cannot be computed without solving two equations," and the one-equation approach was met with skepticism. However, its computational accuracy for wing boundary layers was not only comparable but sometimes superior to two-equation models, leading to its rapid adoption in the aerospace industry. The reason it has been recommended for years in NASA's external aerodynamics CFD guidelines is precisely this combination of lightness and robustness from the single equation.
Computational Methods for Spalart-Allmaras
Discretization in FVM
How do you discretize the SA model in a CFD solver?
Discretization using the Finite Volume Method (FVM) follows the same framework as other scalar transport equations. Convection and diffusion terms are converted into face fluxes and discretized.
However, there are specific points to note for the SA model. The nonlinear diffusion term $c_{b2}(\nabla\tilde{\nu})^2$ does not fit the standard diffusion term form, so it needs to be handled as a source term or rewritten into a conservative form with some ingenuity.
Wall Distance $d$ Calculation
How do you calculate the wall distance? You need the distance from every cell to the nearest wall, right?
That's correct. There are mainly two methods for calculating wall distance.
| Method | Computational Cost | Accuracy | Parallelization |
|---|---|---|---|
| Geometric Search (Brute Force) | $O(N_{cell} \times N_{wall})$ | Accurate | High communication cost |
| Poisson Equation Method | $O(N_{cell})$ | Approximate | Easy |
The Poisson equation method solves $\nabla^2 \phi = -1$ and estimates $d \approx |\nabla\phi| + \sqrt{|\nabla\phi|^2 + 2\phi}$. Fluent uses this by default. It is more efficient than geometric search for large-scale parallel computation.
Boundary Conditions
What boundary conditions are set at the wall and far field?
| Boundary | Condition | Remarks |
|---|---|---|
| Wall | $\tilde{\nu} = 0$ | Full no-slip condition |
| Inlet | $\tilde{\nu}_{\text{in}} = 3\nu$ ~ $5\nu$ | External flow with low turbulence intensity |
| Far Field | $\tilde{\nu}_{\infty} / \nu = 3$ ~ $5$ | NASA recommended values |
The inlet $\tilde{\nu}$ setting affects results. NASA Turbulence Modeling Resource recommends $\tilde{\nu}/\nu = 3$, but adjustment based on turbulence intensity is necessary for comparison with wind tunnel experiments.
Numerical Stability Techniques
Can calculations become unstable with the SA model?
If $\tilde{\nu}$ becomes negative, it is physically meaningless. The following countermeasures are used.
- Negativity clipping: Clip to zero when $\tilde{\nu} < 0$
- SA-neg variant: Negative-value tolerant version proposed by Allmaras et al. (2012). Modifies production and destruction terms to allow stable computation even when $\tilde{\nu} < 0$
- Implicit linearization of source term: Decompose into the form $S_{\tilde{\nu}} = S_c + S_p \cdot \tilde{\nu}$ and incorporate the $S_p < 0$ part into the coefficient matrix
Is the SA-neg variant implemented in OpenFOAM as well?
In OpenFOAM v2306 and later, the SpalartAllmaras class includes negative value handling. Fluent also supports SA-neg.
SA Model's Wall DistanceโThe Big Impact of a Small Input
The Spalart-Allmaras model uses the wall distance $d$ as its only geometric input, and the accuracy of this $d$ determines the overall accuracy of the model. For complex shapes, such as gaps between wings and flaps or junctions between fuselage and engine, calculating wall distance becomes difficult. Particularly, if an internal wall (like the inner surface of a cavity) is mistakenly recognized as an "external wall," the wall distance becomes overestimated, leading to locally overestimated eddy viscosity. When using the SA model, it's an ironclad rule in the field to always visualize and check the wall distance field to safeguard calculation accuracy.
Experience the theory firsthand with the interactive simulator for this field
All Simulators