-
Configuration File
Mesh File
Restart File
Solver Setup
Physical Definition
Markers and Boundary Conditions
Convective Schemes
Slope Limiters and Shock Resolution
History and Solution Output
Linear Solvers and Preconditioners
Basics of Multi-Zone Computations
Execution
Aeroacoustic analysis of unsteady pressure
Flamelet Solver — Python Wrapper Wall Boundary Conditions
Output Fields Reference
Error Messages
-
Setup Guide: Steady RANS for External Aerodynamics
Setup Guide: Incompressible Flows
Setup Guide: Unsteady Flows and DES
Setup Guide: Laminar-Turbulent Transition
Setup Guide: Turbomachinery
Setup Guide: Heat Transfer and Conjugate Heat Transfer
Setup Guide: Species Transport and Combustion
Setup Guide: Shape Optimization with the Discrete Adjoint
Setup Guide: Non-Ideal Compressible Flows
-
Option Reference
Problem Definition
FluidModel
Data-driven fluid model parameters
Freestream Conditions
Reference Conditions
Boundary Markers
Time-marching
Linear solver definition
Convergence
Multi-grid
Spatial Discretization
Adjoint and Gradient
Sobolev Gradient Solver Parameters
Input/output files and formats
Dynamic mesh definition
Aeroelastic Simulation (Typical Section Model)
Wind Gust
Equivalent Area
Grid deformation
Deformable mesh
FEM flow solver definition
FEA solver
Multizone definition
Radiation solver
Heat solver
Visualize Control Volumes
Inverse design problem
Unsupported options
FFD point inversion
Automatic Differentation options
Python Options
Hybrid_RANSLES Options
Output Options
libROM options
Renamed and Removed Options
-
GIT-ting Started
Developing SU2 on GitHub (Internal Developers)
Running Regression Tests
Code Review
Code Structure
Style Guide
Advanced AD Techniques
Containers for Development
Writing Unit Tests
Integrating Tracy Profiler with SU2
Automatic Differentiation (AD)
Code Reference (Doxygen)
Debugging SU2
Documentation Improvements and Status
Glossary
Docs Check
Transition Models
This page explains the model and its SU2 implementation. For numerical setup choices, see the setup guide; use its tutorial and V&V links for worked examples and comparisons.
A turbulence model alone treats the boundary layer as turbulent from the leading edge. A transition model lets the boundary layer start laminar and become turbulent further downstream, where a transition criterion is met. SU2 has two transition models: the Langtry-Menter (LM) model, which adds two transport equations and works with SST or SA, and the algebraic Bas-Cakmakcioglu model (SA-BCM), which only changes the SA equation.
- Select a model
- Langtry-Menter (LM)
- Bas-Cakmakcioglu (SA-BCM)
- What SU2 does differently from the literature
- Free-stream and inlet values
- Verification and test cases
- Known limits
- Related pages
Select a model
Both models need SOLVER= RANS or SOLVER= INC_RANS and a turbulence model (see Turbulence Models).
| Model | Settings |
|---|---|
| LM with SST | KIND_TURB_MODEL= SST, KIND_TRANS_MODEL= LM |
| LM with SA | KIND_TURB_MODEL= SA, KIND_TRANS_MODEL= LM |
| SA-BCM | KIND_TURB_MODEL= SA, SA_OPTIONS= BCM (leave KIND_TRANS_MODEL at NONE) |
KIND_TRANS_MODELtakesNONE(the default) orLM. WithKIND_TURB_MODEL= NONE, SU2 stops with an error.- The old setting
KIND_TRANS_MODEL= BCis no longer accepted. SU2 stops and tells you to useSA_OPTIONS= BCM.
This page describes the SU2 develop branch. Availability here is determined by this source revision; options from another branch may differ.
Langtry-Menter (LM)
The LM model solves two extra equations:
- the intermittency gamma (
INTERMITTENCYin the output): 0 where the boundary layer is laminar, 1 where it is turbulent; - the transition onset momentum-thickness Reynolds number Re_theta_t (
RE_THETA_T): the value of Re_theta at which transition starts, carried from the free stream into the boundary layer.
The model uses gamma to damp the production of turbulence in the boundary layer. The TMR page of the LM model gives the equations.
Original papers:
- R. B. Langtry and F. R. Menter, “Correlation-Based Transition Modeling for Unstructured Parallelized Computational Fluid Dynamics Codes”, AIAA Journal 47(12), 2009, pp. 2894-2906.
- Crossflow extension (
LM2015): R. B. Langtry, K. Sengupta, D. T. Yeh and A. J. Dorgan, AIAA 2015-2474.
LM_OPTIONS keywords
LM_OPTIONS takes a list. With an empty list, SU2 runs the 2009 model with the default correlation of the turbulence model.
Version.
LM2015adds the correction for stationary crossflow instabilities. It works only in 3D; in 2D SU2 stops with an error.LM2015usesHROUGHNESS, the RMS height of the surface roughness (default1e-6). SU2 divides it by a momentum thickness, so give it in the length unit of the mesh (to be reviewed).
Correlation (at most one; SU2 stops with an error if you give two). The correlations give the critical Reynolds number Re_theta_c and the length of the transition zone from Re_theta_t. The table shows the reference that SU2 prints at start-up.
| Keyword | Reference printed by SU2 | Notes |
|---|---|---|
MENTER_LANGTRY |
Menter and Langtry (2009) | Default with SST. |
MALAN |
Malan et al. (2009) | Default with SA. |
SULUKSNA |
Suluksna et al. (2009) | |
KRAUSE |
Krause et al. (2008) | Meant for hypersonic flows (to be reviewed). |
KRAUSE_HYPER |
Krause et al. (2008, paper) | Meant for hypersonic flows (to be reviewed). Depends on the turbulence intensity. |
MEDIDA_BAEDER |
Medida and Baeder (2011) | Developed for SA (to be reviewed). Depends on the turbulence intensity. |
DEFAULT |
Same as giving no correlation. | |
NONE |
No effect. |
The code also contains a MEDIDA correlation (Medida PhD, 2014), but MEDIDA is not an accepted keyword in develop.
Example: LM_OPTIONS= LM2015, MENTER_LANGTRY.
Keep the default correlation unless a validation for your type of flow supports another one (to be reviewed).
Bas-Cakmakcioglu (SA-BCM)
SA-BCM is an algebraic model: it solves no extra equation. It multiplies the production term of SA by an intermittency function, gamma_BC. This function depends on the local vorticity Reynolds number, the eddy viscosity and the free-stream turbulence intensity. SU2 implements the 2020 version listed on the TMR SA-BCM page.
- SA-BCM is built on SA-noft2. SU2 stops with an error if you combine
BCMwithWITHFT2,ROTATION,COMPRESSIBILITY,QCR2000orNEGATIVE, unless you addEXPERIMENTAL. - The volume field
INTERMITTENCY(groupINTERMITTENCY) is registered for SA-BCM, but currently reads a getter that returns zero. It does not show the computed BCM intermittency; do not use it to locate transition. The LM intermittency fields are separate and do not have this getter problem.
Original papers:
- S. C. Cakmakcioglu, O. Bas, R. Mura and U. Kaynak, AIAA 2020-2706.
- R. Mura and S. C. Cakmakcioglu, AIAA 2020-2714.
What SU2 does differently from the literature
LM with SST
- Base model. The TMR LM model is built on SST-2003. In SU2 the SST model is always the “m” form (no turbulent kinetic energy in the stress tensor), and the default is
V2003m. The T3A tutorial uses the default; the E387 tutorial with SST usesV1994m. See Turbulence Models. - Coupling to SST, as in the TMR: SU2 multiplies the production of k by the effective intermittency gamma_eff, and the destruction of k by min(max(gamma_eff, 0.1), 1). gamma_eff is the larger of gamma and the separation-induced intermittency gamma_sep. The omega equation is unchanged. The blending function F1 is replaced by max(F1, F3), with F3 = exp(-(Ry/120)^8) and Ry = rho y sqrt(k) / mu, where y is the wall distance.
- Turbulence intensity. SU2 computes the local intensity from k: Tu = 100 sqrt(2k/3) / U, in percent, and keeps it at 0.027 % or above.
LM with SA
The LM model was published for SST. SU2 also couples it to SA, which has no k. This coupling differs from the SST one:
- Turbulence intensity. Tu is
FREESTREAM_TURBULENCEINTENSITY(times 100) everywhere in the domain. It does not decay. - Onset and length functions. For the ratio R_t, SU2 uses mu_t/mu in place of rho k/(mu omega). The onset function is capped at 4 instead of 2, and its third part is max(2 - (R_t/2.5)^3, 0) instead of max(1 - (R_t/2.5)^3, 0). The length function has no sublayer blending, and the wake function is 1.
- Coupling to SA. SU2 multiplies the SA production by gamma_eff, and the SA destruction by min(max(gamma, 0.5), 1), where gamma is the transported intermittency. The closest TMR model, SA-noft2-Gamma-Retheta, puts no intermittency factor on the destruction term. The TMR says an older form of that factor, max(min(gamma, 0.5), 1), is always 1. A comment in the SU2 code makes the same point and asks whether the published form is wrong.
- SU2 does not check which SA variant you use with LM.
Both LM couplings
- Free-stream values. The free-stream intermittency is always 1. SU2 computes the free-stream Re_theta_t from
FREESTREAM_TURBULENCEINTENSITYwith the zero-pressure-gradient Langtry-Menter correlation.FREESTREAM_INTERMITTENCYis printed at start-up but has no effect. - Inlets. At inlets, SU2 uses the free-stream values of gamma and Re_theta_t.
MARKER_INLET_TURBULENTchanges the inlet k and omega (or nu-tilde), but not the LM variables. - Walls. No flux of gamma or Re_theta_t crosses a wall (zero normal gradient).
- LM2015. The crossflow correction also limits the time scale of the Re_theta_t equation with the local grid length.
SA-BCM
SU2 follows the TMR description:
- the critical Reynolds number is Re_theta_c = 803.73 (Tu + 0.6067)^-1.027, with Tu in percent from
FREESTREAM_TURBULENCEINTENSITY(times 100), constant in the domain; - chi_1 = 0.002; SU2 multiplies mu_t/mu by 50 in the second intermittency term, equivalent to dividing by the TMR value chi_2 = 0.02;
- the destruction term is not changed;
- the free-stream nu-tilde is 0.005 times the usual SA value. With the default
FREESTREAM_NU_FACTOR= 3, this gives 0.015 times the kinematic viscosity, the low end of the TMR range (0.015 to 0.025).
If you set both SA_OPTIONS= BCM and KIND_TRANS_MODEL= LM, SU2 gives no error. It solves the LM equations, but the SA source term uses the BCM intermittency. Do not combine them.
Free-stream and inlet values
| Option | Default | Used by | Meaning |
|---|---|---|---|
FREESTREAM_TURBULENCEINTENSITY |
0.05 |
LM, SA-BCM, SST | Turbulence intensity as a fraction: 0.001 means 0.1 %. SU2 multiplies it by 100 inside the correlations. |
FREESTREAM_TURB2LAMVISCRATIO |
10.0 |
SST | Eddy viscosity over laminar viscosity, used for the free-stream omega. |
FREESTREAM_NU_FACTOR |
3.0 |
SA | Free-stream nu-tilde over kinematic viscosity (times 0.005 with BCM). |
HROUGHNESS |
1e-6 |
LM with LM2015 |
RMS roughness height. |
FREESTREAM_INTERMITTENCY |
1.0 |
none | No effect on LM or BCM. |
- The default intensity of 5 % is high for most external flows. Set it to the value of your experiment or flight condition (to be reviewed).
- With SST, k decays between the far field and the body, so the intensity at the leading edge is lower than the far-field value. Check it in the output (Tu = sqrt(2k/3)/U from the
TKEfield) (to be reviewed). - With SA (LM or BCM), the intensity is the same everywhere. Give the value expected at the body (to be reviewed).
Setup Guide: Laminar-Turbulent Transition gives more advice on these values, on the mesh and on convergence.
Verification and test cases
- V&V page: Langtry and Menter transition model (T3A, T3B, T3A-, NLF0416 and E387 cases, compared with another code).
- Tutorials:
- Transitional Flat Plate: SA-BCM on the Schubauer-Klebanoff flat plate.
- Transitional Flat Plate for T3A and T3A-: LM with SST.
- E387 airfoil with LM, with SA and with SST: config files in the Tutorials repository. The tutorial regression tests run both.
- Test cases:
- SA-BCM, incompressible: TestCases/transition (Schubauer-Klebanoff, T3A, E387). The regression tests run the Schubauer-Klebanoff case. Note: these configs give
FREESTREAM_TURBULENCEINTENSITYas a percent value (0.18,3.0,0.1), while SU2 reads it as a fraction. The tutorial sets0.0018for the same Schubauer-Klebanoff flow. Do not copy these values. - LM with SA on the S809 airfoil: trans_s809.cfg. The regression scripts do not run it.
- SA-BCM, incompressible: TestCases/transition (Schubauer-Klebanoff, T3A, E387). The regression tests run the Schubauer-Klebanoff case. Note: these configs give
Known limits
- Only LM and SA-BCM are available in develop.
- LM has no discrete adjoint. Do not combine
KIND_TRANS_MODEL= LMwithMATH_PROBLEM= DISCRETE_ADJOINT: the required transition solver is not created, and the run can crash during setup. See the developer guide. - SA-BCM intermittency output is zero in this code version, so it is not a transition-location diagnostic (see SA-BCM).
- LM uses the velocity magnitude and its streamwise gradient. The TMR notes that the model is therefore not Galilean invariant: results depend on the frame of reference (to be reviewed for moving walls and rotating frames).
LM2015works only in 3D.- LM with SA uses one constant turbulence intensity in the whole domain. So does SA-BCM.
- The LM correlations are built from low-speed experiments. For crossflow, supersonic and hypersonic transition, check the model against data for your flow (to be reviewed).
Related pages
- Setup Guide: Laminar-Turbulent Transition and Setup Guide: Steady RANS for External Aerodynamics
- Turbulence Models
- All options: Option Reference. All output fields: Output Fields Reference (
INTERMITTENCY,RE_THETA_T,INTERMITTENCY_SEP,INTERMITTENCY_EFF,TURB_INDEX). - For developers: Adding a Transition Model
- NASA Turbulence Modeling Resource. It moved from turbmodels.larc.nasa.gov in 2026; the old links now lead to a NASA landing page.
Source review: 22 October 2026, against SU2 docs_site at 41ea6a219a. See the review scope and outstanding validation. Setup recommendations remain draft where indicated.