Spalart-Allmaras Model

Category: Fluid Analysis (CFD) | Integrated 2026-04-06
CAE visualization for spalart allmaras theory - technical simulation diagram
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.


$$ \frac{D\tilde{\nu}}{Dt} = c_{b1}\tilde{S}\tilde{\nu} - c_{w1}f_w\left(\frac{\tilde{\nu}}{d}\right)^2 + \frac{1}{\sigma}\left[\nabla\cdot\left((\nu + \tilde{\nu})\nabla\tilde{\nu}\right) + c_{b2}(\nabla\tilde{\nu})^2\right] $$

๐ŸŽ“

The physical meaning of each term is as follows.


TermEquationPhysical 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.


$$ \nu_t = \tilde{\nu}\, f_{v1}, \quad f_{v1} = \frac{\chi^3}{\chi^3 + c_{v1}^3}, \quad \chi = \frac{\tilde{\nu}}{\nu} $$

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.


ConstantValueConstantValue
$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.

Coffee Break Yomoyama Talk

"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.


$$ \int_V \frac{\partial(\rho\tilde{\nu})}{\partial t}dV + \oint_S \rho\tilde{\nu}\mathbf{u}\cdot d\mathbf{A} = \oint_S \frac{\rho(\nu+\tilde{\nu})}{\sigma}\nabla\tilde{\nu}\cdot d\mathbf{A} + \int_V S_{\tilde{\nu}}\, dV $$

๐ŸŽ“

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.


MethodComputational CostAccuracyParallelization
Geometric Search (Brute Force)$O(N_{cell} \times N_{wall})$AccurateHigh communication cost
Poisson Equation Method$O(N_{cell})$ApproximateEasy
๐ŸŽ“

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?


๐ŸŽ“
BoundaryConditionRemarks
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.

Coffee Break Yomoyama Talk

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.

Related Simulators

Experience the theory firsthand with the interactive simulator for this field

All Simulators

Related fields

Thermal AnalysisV&V ยท Quality AssuranceStructural Analysis
Rate this article
Thank you for your feedback!
Helpful
More details
Report error
Helpful
0
More details
0
Report error
0
Written by NovaSolver Contributors
Anonymous Engineers & AI โ€” Sitemap
About the Authors