You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 5baa52a
Browse filesBrowse the repository at this point in the historyBrowse files
Copy file name to clipboardExpand all lines: _docs_v7/Setup-Guide-Unsteady-DES.md
+19-10Lines changed: 19 additions & 10 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -193,7 +193,7 @@ The mesh files of the test cases are in the [TestCases repository](https://githu
193
193
194
194
Dual time stepping splits the run into physical time steps. Inside each time step, SU2 runs "inner iterations" to find the new solution, the same way it converges a steady problem (tutorial, docs).
195
195
196
-
-`TIME_DOMAIN= YES` turns on the time-accurate solver (docs). `TIME_MARCHING= DUAL_TIME_STEPPING-2ND_ORDER` is used by all URANS and DES test cases (test case). `DUAL_TIME_STEPPING-1ST_ORDER` and `TIME_STEPPING` (one update per time step, no inner iterations) also exist (code).
196
+
-`TIME_DOMAIN= YES` turns on the time-accurate solver (docs). `TIME_MARCHING= DUAL_TIME_STEPPING-2ND_ORDER` is used by the URANS test cases and by the flat plate and backscatter DES tests (test case). The short ONERA M6 DES regression tests of PR #2150 use `DUAL_TIME_STEPPING-1ST_ORDER` (test case). `DUAL_TIME_STEPPING-1ST_ORDER` and `TIME_STEPPING` (one update per time step, no inner iterations) also exist (code).
197
197
-`TIME_STEP` is the physical time step. It is always in seconds, also when the equations are non-dimensional: SU2 divides it by the reference time (code).
198
198
-`TIME_ITER` is the number of time steps. The default is `1` (code).
199
199
-`MAX_TIME` is the final physical time in seconds. The default is `1.0`. SU2 stops at `MAX_TIME` or at `TIME_ITER`, whichever comes first (code, docs). Set `MAX_TIME` larger than `TIME_STEP` × `TIME_ITER` if you want `TIME_ITER` steps.
@@ -263,9 +263,9 @@ So average over one continuous run, without restarts (advice).
263
263
264
264
### Hybrid RANS/LES: which DES variant
265
265
266
-
All DES variants in SU2 develop build on the SA model. Set `KIND_TURB_MODEL= SA` and pick a variant with `HYBRID_RANSLES` (code).
266
+
The `SA_*` variants build on the SA model, the `SST_*` variants on the SST model. Set `KIND_TURB_MODEL` and pick a matching variant with `HYBRID_RANSLES` (code). The SST variants come with [PR #2150](https://github.com/su2code/SU2/pull/2150) and are in develop once it is merged.
267
267
268
-
In original `SA_DES`, the length scale is min(d, C_DES Δ), where d is wall distance and Δ the grid measure. The delayed variants use d − f_d·max(0, d − C_DES Δ): f_d near zero protects attached boundary layers, and f_d near one recovers the DES limit. The grid measure also changes with the variant. Thus distance from the wall alone does not determine the RANS/LES mode (code, reference). See [Hybrid RANS/LES](../Hybrid-RANS-LES/#what-su2-does-differently-from-the-literature).
268
+
In original `SA_DES`, the length scale is min(d, C_DES Δ), where d is wall distance and Δ the grid measure. The delayed variants use d − f_d·max(0, d − C_DES Δ): f_d near zero protects attached boundary layers, and f_d near one recovers the DES limit. The SST variants use the same idea with the RANS length √k / (β* ω) in place of d. The grid measure also changes with the variant. Thus distance from the wall alone does not determine the RANS/LES mode (code, reference). See [Hybrid RANS/LES](../Hybrid-RANS-LES/#what-su2-does-differently-from-the-literature).
269
269
270
270
|`HYBRID_RANSLES`| What it is (code) |
271
271
| --- | --- |
@@ -274,19 +274,25 @@ In original `SA_DES`, the length scale is min(d, C_DES Δ), where d is wall dist
274
274
|`SA_DDES`| Delayed DES (Spalart et al. 2006). A shielding function keeps attached boundary layers in RANS mode. |
275
275
|`SA_ZDES`| DDES with a cell size based on the vorticity direction (Deck 2012). |
276
276
|`SA_EDDES`| DDES with a cell size adapted to shear layers (Shur et al. 2015). Meant to switch faster from RANS to LES in separated shear layers. |
277
+
|`SST_DDES`| DDES for SST (Gritskevich et al. 2012). |
278
+
|`SST_IDDES`| Improved DDES for SST (Gritskevich et al. 2012), with a wall-modelled LES branch. |
279
+
|`SST_SIDDES`| Simplified IDDES: IDDES without the elevating function. |
280
+
|`SST_EDDES`|`SST_DDES` with the shear-layer-adapted cell size of `SA_EDDES`. |
277
281
278
282
Advice:
279
283
280
284
-`SA_DES` can switch to LES inside an attached boundary layer if the mesh is fine along the wall. The mesh, not the flow, can then cause separation. `SA_DDES` and `SA_EDDES` add shielding to reduce this risk; the result still needs mesh and sensor checks (advice).
281
285
-`SA_ZDES` in SU2 is DDES with the ZDES cell size. It is not the full zonal method of the reference, where the user picks RANS and LES zones (code, to be reviewed).
282
-
- SU2 does not stop with an error if you set `HYBRID_RANSLES` with `KIND_TURB_MODEL= SST`. Only the SA solver uses the DES length scale, so such a run is plain URANS (code).
286
+
- SU2 stops with an error if the variant does not match `KIND_TURB_MODEL`, or if `TIME_DOMAIN= NO` (code).
287
+
- With an `SST_*` variant, SU2 also stops if `SST_OPTIONS` contains `COMPRESSIBILITY-WILCOX` or `COMPRESSIBILITY-SARKAR`. How these corrections should act in the LES region is not validated yet (code). See [Hybrid RANS/LES](../Hybrid-RANS-LES/#sst-variants).
283
288
284
289
Related options (code):
285
290
286
291
-`DES_CONST`: the DES constant. The default is `0.65`.
287
292
-`LES_FILTER_WIDTH`: a fixed LES filter width. The default `-1.0` means SU2 uses the local cell size (the largest distance from a point to its neighbours).
288
293
-`ENFORCE_LES= YES`: LES mode everywhere. It needs `HYBRID_RANSLES` other than `NONE`.
289
-
-`STOCHASTIC_BACKSCATTER= YES` and the `SBS_` options: a stochastic backscatter model, which feeds energy from the modelled to the resolved scales. It works only in 3D and only with `HYBRID_RANSLES` set. The test case `backscatter/backward_step/backwardStep.cfg` shows all its options (code, test case).
294
+
- These three options act only on the `SA_*` variants. With an `SST_*` variant, SU2 stops with an error if you set `DES_CONST`, give a positive `LES_FILTER_WIDTH`, or set `ENFORCE_LES= YES` (code). The SST variants use their own constant, C_DES = 0.78·F1 + 0.61·(1 − F1). The screen shows the constant in use at the start of the run (code).
295
+
-`STOCHASTIC_BACKSCATTER= YES` and the `SBS_` options: a stochastic backscatter model, which feeds energy from the modelled to the resolved scales. It works only in 3D and only with an `SA_*` variant. SU2 stops with an error otherwise (code). The test case `backscatter/backward_step/backwardStep.cfg` shows all its options (code, test case).
290
296
291
297
### Mesh for DES
292
298
@@ -302,7 +308,7 @@ General points for the DES mesh (advice, to be reviewed):
302
308
303
309
- The time step must resolve the eddies the mesh can hold. A common target is a convective CFL number of about 1 in the LES region, that is, a time step of about cell size / local velocity (advice, to be reviewed).
304
310
- Use `DUAL_TIME_STEPPING-2ND_ORDER` (test case).
305
-
- The DES and backscatter tests use `INNER_ITER= 20` (test case). Check the inner convergence as for URANS.
311
+
- The flat plate DES test and the backscatter test use `INNER_ITER= 20` (test case). The short ONERA M6 DES regression tests use `INNER_ITER= 2` and are not a setup example. Check the inner convergence as for URANS.
306
312
307
313
### Numerical dissipation
308
314
@@ -312,7 +318,7 @@ Reduce numerical dissipation where you can. Upwind schemes and limiters add it,
312
318
313
319
- It works with `ROE`, `SLAU` and `SLAU2`.
314
320
-`FD`: uses the DDES shielding function, computed from the wall distance.
315
-
-`NTS`: the blending of Travin and Shur. It uses `DES_CONST` and the cell size.
321
+
-`NTS`: the blending of Travin and Shur. It uses `DES_CONST` and the cell size. With an `SST_*` variant you cannot set `DES_CONST`, so it uses the default, 0.65.
316
322
-`FD_DUCROS` and `NTS_DUCROS`: as above, plus the Ducros sensor, which keeps the full dissipation at shocks (code, docs).
317
323
- SU2 keeps at least 5 % of the upwind dissipation for stability.
318
324
- Write the `ROE_DISSIPATION` output group to see where the dissipation is reduced.
@@ -336,7 +342,7 @@ No test case in develop uses `ROE_LOW_DISSIPATION` (test case).
336
342
-**Start-up phase over.** Plot `LIFT` and `DRAG` against time. The signal should be periodic or statistically steady before `WINDOW_START_ITER` (tutorial).
337
343
-**Averages settled.** Compare averages from separate sampling blocks and extend the sampling interval. A slowly changing cumulative average alone does not establish statistical convergence, especially for DES. Monitor `TAVG_LIFT` and `TAVG_DRAG`. With `WINDOW_CAUCHY_CRIT= YES`, the `CAUCHY_TAVG_` values are below `CONV_WINDOW_CAUCHY_EPS` (tutorial).
338
344
-**Time step and mesh.** Halve the time step and refine the mesh. The frequency and the averages should change little (advice).
339
-
-**DES regions.** Write the `DDES` group: `DES_LENGTHSCALE`, `WALL_DISTANCE` and `LES_SENSOR`. `LES_SENSOR` is 0 where the model acts as RANS. In LES mode it is 1 for `SA_DES` and the value of the shielding function for the DDES variants(code). Attached boundary layers should stay at 0 (advice).
345
+
-**DES regions.** Write the `DDES` group: `DES_LENGTHSCALE`, `WALL_DISTANCE` and `LES_SENSOR`. `LES_SENSOR` is 0 where the model acts as RANS. In LES mode it is 1 for `SA_DES`, the value of the shielding function f_d for the SA DDES variants, `SST_DDES` and `SST_EDDES`, and 1 − f̃\_d for `SST_IDDES` and `SST_SIDDES`(code). Attached boundary layers should stay at 0 (advice). See [Hybrid RANS/LES](../Hybrid-RANS-LES/#recommended-use) for an extra check with SST.
340
346
-**Resolved eddies.** Write the `VORTEX_IDENTIFICATION` group: `VORTICITY` (2D) or `VORTICITY_X`, `VORTICITY_Y`, `VORTICITY_Z` (3D), and `Q_CRITERION` (code). Iso-surfaces of `Q_CRITERION` show the resolved eddies (advice).
341
347
342
348
See [History and Solution Output](../Custom-Output/) and the [Output Fields Reference](../Output-Fields-Reference/).
@@ -357,7 +363,9 @@ See [History and Solution Output](../Custom-Output/) and the [Output Fields Refe
357
363
| The inner iterations never reach the criterion. | Time step too large, or CFL too low for the inner loop. | Reduce `TIME_STEP`, raise `CFL_NUMBER` or `INNER_ITER` (advice). |
358
364
| DES: the boundary layer separates too early. | LES mode inside the attached boundary layer (check `LES_SENSOR`). | Use `SA_DDES` or `SA_EDDES` instead of `SA_DES`; check the cell size along the wall (advice). |
359
365
| DES: the wake looks smooth, with no resolved eddies. | Too much dissipation, or the mesh is too coarse or too stretched in the wake. | Use `ROE_LOW_DISSIPATION` or `LD2`, remove the limiter, refine the wake with near-cubic cells (advice, to be reviewed). |
360
-
| DES has no effect at all. |`HYBRID_RANSLES` set with `KIND_TURB_MODEL= SST`. | Use `KIND_TURB_MODEL= SA` (code). |
366
+
| SU2 stops: "Hybrid RANS/LES models (HYBRID_RANSLES) require an unsteady simulation ...". |`HYBRID_RANSLES` set in a steady run. | Set `TIME_DOMAIN= YES` (code). |
367
+
| SU2 stops: "The hybrid RANS/LES model (HYBRID_RANSLES) must match the turbulence model ...". | An `SA_*` variant without `KIND_TURB_MODEL= SA`, or an `SST_*` variant without `KIND_TURB_MODEL= SST`. | Pick a variant that matches the turbulence model (code). |
368
+
| SU2 stops with an `SST_*` variant, and the message names `DES_CONST`, `LES_FILTER_WIDTH`, `ENFORCE_LES`, `STOCHASTIC_BACKSCATTER` or the SST compressibility corrections. | The SST variants do not support this option. | Remove the option, or use an `SA_*` variant (code). |
361
369
362
370
## Related tutorials and test cases
363
371
@@ -372,11 +380,12 @@ Test cases (develop branch):
372
380
-[unsteady/square_cylinder/turb_square.cfg](https://github.com/su2code/SU2/blob/develop/TestCases/unsteady/square_cylinder/turb_square.cfg): URANS with SST and `ROE`, restart from step 2.
373
381
-[unsteady/pitching_naca64a010_rans/turb_NACA64A010.cfg](https://github.com/su2code/SU2/blob/develop/TestCases/unsteady/pitching_naca64a010_rans/turb_NACA64A010.cfg): URANS of a pitching airfoil with SA and rigid mesh motion.
374
382
-[ddes/flatplate/ddes_flatplate.cfg](https://github.com/su2code/SU2/blob/develop/TestCases/ddes/flatplate/ddes_flatplate.cfg): `SA_EDDES` with `SLAU2`.
383
+
-`ddes/oneram6/ddes_oneram6_*.cfg` (PR #2150): short regression tests of `SST_DDES`, `SST_IDDES`, `SST_SIDDES`, `SST_EDDES` and `SA_EDDES` on the ONERA M6 wing. See [Hybrid RANS/LES](../Hybrid-RANS-LES/#verification-and-test-cases).
375
384
-[backscatter/backward_step/backwardStep.cfg](https://github.com/su2code/SU2/blob/develop/TestCases/backscatter/backward_step/backwardStep.cfg): incompressible `SA_DDES` with stochastic backscatter, `LD2` scheme and time-average output.
- All options: [Option Reference](../Option-Reference/). All output fields: [Output Fields Reference](../Output-Fields-Reference/).
381
390
382
-
Source review: 22 October 2026, against [SU2 `docs_site` at `41ea6a219a`](https://github.com/rois1995/SU2/tree/41ea6a219ac038574f3d4a5b130c0c1d8af66457). See the [review scope and outstanding validation](../Documentation-Status/#guide-and-model-review). Setup recommendations remain draft where indicated.
391
+
Source review: 22 October 2026, against [SU2 `docs_site` at `41ea6a219a`](https://github.com/rois1995/SU2/tree/41ea6a219ac038574f3d4a5b130c0c1d8af66457). The DES statements were updated on 23 October 2026 against [PR #2150 at `1bcd4a7425`](https://github.com/su2code/SU2/tree/1bcd4a74257d5cce1929187d635fc1dc0d1ae5c8). See the [review scope and outstanding validation](../Documentation-Status/#guide-and-model-review). Setup recommendations remain draft where indicated.
Copy file name to clipboardExpand all lines: _docs_v7/Turbulence-Models.md
+3-1Lines changed: 3 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -43,7 +43,7 @@ Other options that act on all turbulence models:
43
43
44
44
Old values of `KIND_TURB_MODEL` (`SST_SUST`, `SA_NEG`, `SA_E`, `SA_COMP`, `SA_E_COMP`) and `KIND_TRANS_MODEL= BC` are no longer accepted. SU2 stops and prints the new option to use. <!-- CConfig.cpp:3425-3439 -->
45
45
46
-
Hybrid RANS-LES models (DES, DDES and stochastic backscatter) build on these models. See [Hybrid RANS-LES](../Hybrid-RANS-LES/). Wall functions and wall roughness, including the SST roughness boundary conditions, are on [Wall Treatment](../Wall-Treatment/).
46
+
Hybrid RANS-LES models (DES, DDES and stochastic backscatter) build on these models. The `SA_*` variants and stochastic backscatter build on SA. The `SST_*` variants (DDES and IDDES for SST, from [PR #2150](https://github.com/su2code/SU2/pull/2150)) build on SST. See [Hybrid RANS-LES](../Hybrid-RANS-LES/). Wall functions and wall roughness, including the SST roughness boundary conditions, are on [Wall Treatment](../Wall-Treatment/).
47
47
48
48
## Spalart-Allmaras (SA)
49
49
@@ -128,6 +128,8 @@ The keywords fall into four groups. SU2 has only the "m" forms of SST ([see belo
128
128
|`COMPRESSIBILITY-WILCOX`| Wilcox dilatation-dissipation correction. Active where the turbulent Mach number sqrt(2k)/a is above 0.25. |
129
129
|`COMPRESSIBILITY-SARKAR`| Sarkar correction: dilatation dissipation plus a pressure-dilatation term. Same threshold. |
130
130
131
+
With the SST hybrid RANS/LES variants (`HYBRID_RANSLES= SST_*`, [PR #2150](https://github.com/su2code/SU2/pull/2150)), SU2 stops with an error if you set one of these corrections. See [Hybrid RANS-LES](../Hybrid-RANS-LES/).
0 commit comments