From fc55ee6cabcf0643ecde474829402b097a8b4256 Mon Sep 17 00:00:00 2001 From: Pedro Gomes Date: Sun, 15 May 2022 17:48:28 +0100 Subject: [PATCH 1/7] sst options --- _docs_v7/Physical-Definition.md | 49 +++++++++++++++++++++++++++++++-- _docs_v7/Theory.md | 5 ++-- 2 files changed, 49 insertions(+), 5 deletions(-) diff --git a/_docs_v7/Physical-Definition.md b/_docs_v7/Physical-Definition.md index c5b36555..569ba15a 100644 --- a/_docs_v7/Physical-Definition.md +++ b/_docs_v7/Physical-Definition.md @@ -18,12 +18,15 @@ SU2 offers different ways of setting and computing this definition. This documen - [Flow Condition (Incompressible)](#flow-condition-incompressible) - [Thermodynamic and Gauge Pressure](#thermodynamic-and-gauge-pressure) - [Initial State and Non-Dimensionalization](#initial-state-and-non-dimensionalization) +- [Turbulence Models](#turbulence-models) + - [Spalart-Allmaras (SA)](#spalart-allmaras-model) + - [Shear Stress Transport (SST)](#shear-stress-transport) --- ## Reference Values ## -| Solver | Version | +| Solver | Version | | --- | --- | | `EULER`, `NAVIER_STOKES`, `RANS`, `INC_EULER`, `INC_NAVIER_STOKES`, `INC_RANS`, `FEM_EULER`, `FEM_NAVIER_STOKES` | 7.0.0 | @@ -47,7 +50,7 @@ The following table depicts the reference values used by most of the solvers in ## Free-Stream Definition (Compressible) ## -| Solver | Version | +| Solver | Version | | --- | --- | | `EULER`, `NAVIER_STOKES`, `RANS`,`FEM_EULER`, `FEM_NAVIER_STOKES` | 7.0.0 | @@ -79,7 +82,7 @@ For all schemes, as reference values for the density and temperature the free-st ## Flow Condition (Incompressible) ## -| Solver | Version | +| Solver | Version | | --- | --- | | `INC_EULER`, `INC_NAVIER_STOKES`, `INC_RANS` | 7.0.0 | @@ -97,3 +100,43 @@ The reference values $$\rho_{ref}, T_{ref}, v_{ref}$$ equal the initial state va **Note:** The initial state is also used as boundary conditions for `MARKER_FAR`. +## Turbulence Models ## + +| Solver | Version | +| --- | --- | +| `*_RANS` | 7.4.0 | + +This section describes how to setup turbulence models for RANS simulations. In general turbulence models are selected via the option `KIND_TURB_MODEL`, corrections/versions and parameters of the models are specified via the options listed below. +The turbulent Pradtl number can be modified with option `PRANDTL_TURB` (the default is 0.9). + +### Spalart-Allmaras (SA) ### + +SU2 implements the following SA versions: +**WIP** + +### Shear Stress Transport (SST) ### + +SU2 implements the "Standard" (1994) and 2003 versions of the SST model along with several modifications. + +**Note:** Currently all versions are "modified" i.e. the turbulence kinetic energy (tke) is not included in the viscous stress tensor. + +The model is selected using `KIND_TURB_MODEL= SST` and the modifications via the `SST_OPTIONS` list. +The freestream and inlet conditions are specified via the options +`FREESTREAM_TURBULENCEINTENSITY= 0.05` (5%) +`FREESTREAM_TURB2LAMVISCRATIO= 10` (ratio of turbulent to laminar viscosity) + +**Note:** The default values for these options are suitable for internal flows but may be too high for external aerodynamics problems. + +The following modifications are allowed: +- Versions: + - `V1994m` - SSTm **WARNING:** Our implementation has a small [inconsistency with the literature](https://github.com/su2code/SU2/issues/1551), which will be resolved in the next major SU2 update (i.e. version 8). + - `V2003m` - SST-2003m, no known inconsistencies. +- Production modifications: + - `VORTICITY` - Uses vorticity to compute the source term instead of strain-rate magnitude. + - `KATO_LAUNDER` - Uses the Kato-Launder modification (vorticity times strain-rate). + - `UQ` - Production is computed using a modified stress tensor for [uncertainty quantification](https://su2code.github.io/tutorials/UQ_NACA0012/). **Note** with this modification tke is always included in the stress tensor. +- Corrections: + - `SUSTAINING` - SST with controlled decay. + - Curvature corrections are currently not implemented. + +Modifications from each of these three groups can be combined, for example `SST_OPTIONS= V2003m, VORTICITY, SUSTAINING` diff --git a/_docs_v7/Theory.md b/_docs_v7/Theory.md index 1078d5c4..72b01dd9 100644 --- a/_docs_v7/Theory.md +++ b/_docs_v7/Theory.md @@ -164,9 +164,10 @@ Within the `INC_EULER` solver, we discretize the equations in space using a fini # Turbulence Modeling # -The Shear Stress Transport (SST) model of Menter and the Spalart-Allmaras (S-A) model are two of the most common and widely used turbulence models. The S-A and SST standard models, along with several variants, are implemented in SU2. The reader is referred to the [NASA Turbulence Modeling Resource](https://turbmodels.larc.nasa.gov/index.html) (TMR) for the details of each specific model, as the versions in SU2 are implemented according to the well-described formulations found there. +SU2 implements several variants of the SST and SA turbulence models, for specifics of the models please see the [NASA Turbulence Modeling Resource](https://turbmodels.larc.nasa.gov/index.html) (TMR). +For information on how to use turbulence models in SU2 see the [users guide](https://su2code.github.io/docs_v7/Physical-Definition/). -Within the turbulence solvers, we discretize the equations in space using a finite volume method (FVM) with a standard edge-based data structure on a dual grid with vertex-based schemes. The convective and viscous fluxes are evaluated at the midpoint of an edge. +The edge-based finite volume discretization of flow solvers is also used in turbulence solvers. Convective fluxes are evaluated using a scalar upwind scheme (1st or 2nd order). --- From 5a2108e2fede25efca53a6096ec8b13c2aec8780 Mon Sep 17 00:00:00 2001 From: Pedro Gomes Date: Tue, 17 May 2022 21:20:17 +0100 Subject: [PATCH 2/7] sa options --- _docs_v7/Physical-Definition.md | 33 ++++++++++++++++++++++++--------- 1 file changed, 24 insertions(+), 9 deletions(-) diff --git a/_docs_v7/Physical-Definition.md b/_docs_v7/Physical-Definition.md index 569ba15a..c43c8765 100644 --- a/_docs_v7/Physical-Definition.md +++ b/_docs_v7/Physical-Definition.md @@ -111,30 +111,45 @@ The turbulent Pradtl number can be modified with option `PRANDTL_TURB` (the defa ### Spalart-Allmaras (SA) ### -SU2 implements the following SA versions: -**WIP** +SU2 implements several versions and corrections of the SA model. +The model is selected using `KIND_TURB_MODEL= SA` and the modifications via the `SA_OPTIONS` list, if this list is empty SU2 defaults to `SA-noft2`. +The freestream and inlet conditions are specified via the option `FREESTREAM_NU_FACTOR= 3` (ratio of SA variable to freestream kinematic viscosity). + +The following modifications are allowed (refer to [NASA's TMR](https://turbmodels.larc.nasa.gov/spalart.html) for further info): +- Versions: + - `NEGATIVE` - Negative SA model. + - `EDWARDS` - Edwards modification. + - `BCM` - BCM transitional model. + - `FT2` - SA model **with** ft2 term, note that by default we omit this term. +- Corrections: + - `QCR2000` - Quadratic contitutive relation used in the stress tensor. + - `COMPRESSIBILITY` - Mixing layer compressibility correction. + - `ROTATION` - Dacles-Mariani et al. rotation correction. + +All the modifications can be combined with each other expect `NEGATIVE`, `EDWARDS`, and `BCM`. However some combinations are not considered standard, e.g. `SA-neg-noft2`, see TMR for details. +For example, to specify `SA-neg-R-comp-QCR2000` use `SA_OPTIONS= NEGATIVE, FT2, ROTATION, COMPRESSIBILITY, QCR2000`. + +The rough wall correction is implicitly turned on by specifying roughness values for wall markers via the `WALL_ROUGHNESS` option. ### Shear Stress Transport (SST) ### SU2 implements the "Standard" (1994) and 2003 versions of the SST model along with several modifications. -**Note:** Currently all versions are "modified" i.e. the turbulence kinetic energy (tke) is not included in the viscous stress tensor. +**Note:** Currently all versions are "modified" i.e. the turbulence kinetic energy (TKE) is not included in the viscous stress tensor. -The model is selected using `KIND_TURB_MODEL= SST` and the modifications via the `SST_OPTIONS` list. -The freestream and inlet conditions are specified via the options -`FREESTREAM_TURBULENCEINTENSITY= 0.05` (5%) -`FREESTREAM_TURB2LAMVISCRATIO= 10` (ratio of turbulent to laminar viscosity) +The model is selected using `KIND_TURB_MODEL= SST` and the modifications via the `SST_OPTIONS` list, if this list is empty SU2 defaults to `SSTm` (see warning below). +The freestream and inlet conditions are specified via the options `FREESTREAM_TURBULENCEINTENSITY= 0.05` (5%) and `FREESTREAM_TURB2LAMVISCRATIO= 10` (ratio of turbulent to laminar viscosity). **Note:** The default values for these options are suitable for internal flows but may be too high for external aerodynamics problems. The following modifications are allowed: - Versions: - `V1994m` - SSTm **WARNING:** Our implementation has a small [inconsistency with the literature](https://github.com/su2code/SU2/issues/1551), which will be resolved in the next major SU2 update (i.e. version 8). - - `V2003m` - SST-2003m, no known inconsistencies. + - `V2003m` - SST-2003m (no known inconsistencies). - Production modifications: - `VORTICITY` - Uses vorticity to compute the source term instead of strain-rate magnitude. - `KATO_LAUNDER` - Uses the Kato-Launder modification (vorticity times strain-rate). - - `UQ` - Production is computed using a modified stress tensor for [uncertainty quantification](https://su2code.github.io/tutorials/UQ_NACA0012/). **Note** with this modification tke is always included in the stress tensor. + - `UQ` - Production is computed using a modified stress tensor for [uncertainty quantification](https://su2code.github.io/tutorials/UQ_NACA0012/). **Note** with this modification TKE is always included in the stress tensor. - Corrections: - `SUSTAINING` - SST with controlled decay. - Curvature corrections are currently not implemented. From bd678af3d88f0d57683cdc3f65b3e0fe6a06e16a Mon Sep 17 00:00:00 2001 From: Pedro Gomes <38071223+pcarruscag@users.noreply.github.com> Date: Thu, 19 May 2022 22:51:18 +0100 Subject: [PATCH 3/7] Apply suggestions from code review Co-authored-by: Nijso --- _docs_v7/Physical-Definition.md | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/_docs_v7/Physical-Definition.md b/_docs_v7/Physical-Definition.md index c43c8765..8a05bacc 100644 --- a/_docs_v7/Physical-Definition.md +++ b/_docs_v7/Physical-Definition.md @@ -106,13 +106,15 @@ The reference values $$\rho_{ref}, T_{ref}, v_{ref}$$ equal the initial state va | --- | --- | | `*_RANS` | 7.4.0 | -This section describes how to setup turbulence models for RANS simulations. In general turbulence models are selected via the option `KIND_TURB_MODEL`, corrections/versions and parameters of the models are specified via the options listed below. -The turbulent Pradtl number can be modified with option `PRANDTL_TURB` (the default is 0.9). +This section describes how to setup turbulence models for RANS simulations. The turbulence model is activated using the option `KIND_SOLVER= RANS`, or `KIND_SOLVER= INC_RANS` +A turbulence model can then be selected via the option `KIND_TURB_MODEL` +Different submodels and parameters are specified via the different options listed below. +The turbulent Prandtl number can be modified with the option `PRANDTL_TURB` (the default is 0.9). ### Spalart-Allmaras (SA) ### SU2 implements several versions and corrections of the SA model. -The model is selected using `KIND_TURB_MODEL= SA` and the modifications via the `SA_OPTIONS` list, if this list is empty SU2 defaults to `SA-noft2`. +The model is selected using `KIND_TURB_MODEL= SA` and the modifications via the `SA_OPTIONS` list. If this list is empty, then SU2 defaults to `SA-noft2`. The freestream and inlet conditions are specified via the option `FREESTREAM_NU_FACTOR= 3` (ratio of SA variable to freestream kinematic viscosity). The following modifications are allowed (refer to [NASA's TMR](https://turbmodels.larc.nasa.gov/spalart.html) for further info): @@ -137,7 +139,7 @@ SU2 implements the "Standard" (1994) and 2003 versions of the SST model along wi **Note:** Currently all versions are "modified" i.e. the turbulence kinetic energy (TKE) is not included in the viscous stress tensor. -The model is selected using `KIND_TURB_MODEL= SST` and the modifications via the `SST_OPTIONS` list, if this list is empty SU2 defaults to `SSTm` (see warning below). +The main model is selected using `KIND_TURB_MODEL= SST` and the version and modifications via the `SST_OPTIONS` list. If this list is empty SU2 defaults to the baseline 1994 model, `V1994m` (see warning below). The options allow for a version and a set of modifiers to the version. The freestream and inlet conditions are specified via the options `FREESTREAM_TURBULENCEINTENSITY= 0.05` (5%) and `FREESTREAM_TURB2LAMVISCRATIO= 10` (ratio of turbulent to laminar viscosity). **Note:** The default values for these options are suitable for internal flows but may be too high for external aerodynamics problems. From 1aa31d7febef3a6502b67668abb18c070011a831 Mon Sep 17 00:00:00 2001 From: Pedro Gomes Date: Sat, 21 May 2022 23:13:59 +0100 Subject: [PATCH 4/7] better explanation --- _docs_v7/Physical-Definition.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/_docs_v7/Physical-Definition.md b/_docs_v7/Physical-Definition.md index 8a05bacc..0a81632e 100644 --- a/_docs_v7/Physical-Definition.md +++ b/_docs_v7/Physical-Definition.md @@ -128,8 +128,9 @@ The following modifications are allowed (refer to [NASA's TMR](https://turbmodel - `COMPRESSIBILITY` - Mixing layer compressibility correction. - `ROTATION` - Dacles-Mariani et al. rotation correction. -All the modifications can be combined with each other expect `NEGATIVE`, `EDWARDS`, and `BCM`. However some combinations are not considered standard, e.g. `SA-neg-noft2`, see TMR for details. +All the modifications can be combined with each other expect `NEGATIVE`, `EDWARDS`, and `BCM`. For example, to specify `SA-neg-R-comp-QCR2000` use `SA_OPTIONS= NEGATIVE, FT2, ROTATION, COMPRESSIBILITY, QCR2000`. +**However, some combinations are not considered standard**, e.g. `SA-neg` should have the ft2 term, whereas `SA-noft2-Edwards` and `SA-noft2-BCM` should not have the ft2 term, and they are usually not combined with other corrections. See TMR for more details. The rough wall correction is implicitly turned on by specifying roughness values for wall markers via the `WALL_ROUGHNESS` option. From 69055e72e35377f59bcb95587e2f2399e90b5199 Mon Sep 17 00:00:00 2001 From: Pedro Gomes Date: Sat, 21 May 2022 23:24:02 +0100 Subject: [PATCH 5/7] update transition tutorial --- .../Transitional_Flat_Plate/Transitional_Flat_Plate.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/_tutorials/compressible_flow/Transitional_Flat_Plate/Transitional_Flat_Plate.md b/_tutorials/compressible_flow/Transitional_Flat_Plate/Transitional_Flat_Plate.md index 11160a89..639d4de2 100644 --- a/_tutorials/compressible_flow/Transitional_Flat_Plate/Transitional_Flat_Plate.md +++ b/_tutorials/compressible_flow/Transitional_Flat_Plate/Transitional_Flat_Plate.md @@ -62,17 +62,17 @@ Several of the key configuration file options for this simulation are highlighte % LINEAR_ELASTICITY, POISSON_EQUATION) SOLVER= INC_RANS % -% Specify turbulent model (NONE, SA, SA_NEG, SST) +% Specify turbulent model (NONE, SA, SST) KIND_TURB_MODEL= SA % -% Specify transition model (NONE, BC) -KIND_TRANS_MODEL= BC +% Specify transition model +SA_OPTIONS= BCM % % Specify Turbulence Intensity (%) FREESTREAM_TURBULENCEINTENSITY = 0.18 ``` -The governing equations are RANS with the Spalart-Allmaras (`SA`) turbulence model. By entering `KIND_TRANS_MODEL= BC`, the Bas-Cakmakcioglu Algebraic Transition Model is activated. This model requires freestream turbulence intensity that is to be used in the transition correlation, thus the `FREESTREAM_TURBULENCEINTENSITY` option is also used. The BC model achieves its purpose by modifying the production term of the 1-equation SA turbulence model. The production term of the SA model is damped until a considerable amount of turbulent viscosity is generated, and after that point, the damping effect on the transition model is disabled. Thus, a transition from laminar to turbulent flow is obtained. +The governing equations are RANS with the Spalart-Allmaras (`SA`) turbulence model. By entering `SA_OPTIONS= BCM`, the Bas-Cakmakcioglu Algebraic Transition Model is activated. This model requires freestream turbulence intensity that is to be used in the transition correlation, thus the `FREESTREAM_TURBULENCEINTENSITY` option is also used. The BC model achieves its purpose by modifying the production term of the 1-equation SA turbulence model. The production term of the SA model is damped until a considerable amount of turbulent viscosity is generated, and after that point, the damping effect on the transition model is disabled. Thus, a transition from laminar to turbulent flow is obtained. The incompressible freestream properties are specified as follows. (Please see "Notes" for freestream properties of other transitional flat plate test cases). From 6cca55602ee15549d24a2c7aa449a97744891223 Mon Sep 17 00:00:00 2001 From: Pedro Gomes Date: Wed, 25 May 2022 15:49:10 +0100 Subject: [PATCH 6/7] FT2 -> WITHFT2 --- _docs_v7/Physical-Definition.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/_docs_v7/Physical-Definition.md b/_docs_v7/Physical-Definition.md index 0a81632e..e7fdc5e3 100644 --- a/_docs_v7/Physical-Definition.md +++ b/_docs_v7/Physical-Definition.md @@ -122,15 +122,15 @@ The following modifications are allowed (refer to [NASA's TMR](https://turbmodel - `NEGATIVE` - Negative SA model. - `EDWARDS` - Edwards modification. - `BCM` - BCM transitional model. - - `FT2` - SA model **with** ft2 term, note that by default we omit this term. + - `WITHFT2` - SA model **with** ft2 term, note that by default we omit this term. - Corrections: - `QCR2000` - Quadratic contitutive relation used in the stress tensor. - `COMPRESSIBILITY` - Mixing layer compressibility correction. - `ROTATION` - Dacles-Mariani et al. rotation correction. -All the modifications can be combined with each other expect `NEGATIVE`, `EDWARDS`, and `BCM`. -For example, to specify `SA-neg-R-comp-QCR2000` use `SA_OPTIONS= NEGATIVE, FT2, ROTATION, COMPRESSIBILITY, QCR2000`. -**However, some combinations are not considered standard**, e.g. `SA-neg` should have the ft2 term, whereas `SA-noft2-Edwards` and `SA-noft2-BCM` should not have the ft2 term, and they are usually not combined with other corrections. See TMR for more details. +All the modifications can be combined with each other expect `NEGATIVE` and `EDWARDS`. +For example, to specify `SA-neg-R-comp-QCR2000` use `SA_OPTIONS= NEGATIVE, WITHFT2, ROTATION, COMPRESSIBILITY, QCR2000`. +**However, some combinations are not considered standard**, e.g. `SA-neg` should have the ft2 term, whereas `SA-noft2-Edwards` and `SA-noft2-BCM` should not have the ft2 term, and they are usually not combined with other corrections (see TMR for more details). To use non-standard combinations it is necessary to add `EXPERIMENTAL` to the option list, e.g. `SA_OPTIONS= NEGATIVE, BCM, EXPERIMENTAL`. The rough wall correction is implicitly turned on by specifying roughness values for wall markers via the `WALL_ROUGHNESS` option. From 51c63e66cff6e339b9bf7d7502f524150e1177f6 Mon Sep 17 00:00:00 2001 From: Pedro Gomes <38071223+pcarruscag@users.noreply.github.com> Date: Fri, 27 May 2022 09:58:02 +0100 Subject: [PATCH 7/7] Update _docs_v7/Physical-Definition.md --- _docs_v7/Physical-Definition.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/_docs_v7/Physical-Definition.md b/_docs_v7/Physical-Definition.md index e7fdc5e3..71830f70 100644 --- a/_docs_v7/Physical-Definition.md +++ b/_docs_v7/Physical-Definition.md @@ -106,7 +106,7 @@ The reference values $$\rho_{ref}, T_{ref}, v_{ref}$$ equal the initial state va | --- | --- | | `*_RANS` | 7.4.0 | -This section describes how to setup turbulence models for RANS simulations. The turbulence model is activated using the option `KIND_SOLVER= RANS`, or `KIND_SOLVER= INC_RANS` +This section describes how to setup turbulence models for RANS simulations. Turbulence is activated using the option `KIND_SOLVER= RANS`, or `KIND_SOLVER= INC_RANS` A turbulence model can then be selected via the option `KIND_TURB_MODEL` Different submodels and parameters are specified via the different options listed below. The turbulent Prandtl number can be modified with the option `PRANDTL_TURB` (the default is 0.9).