programmer's documentation
Functions | Variables
cs_turbulence_model.c File Reference
#include "cs_defs.h"
#include <assert.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>
#include "bft_mem.h"
#include "bft_error.h"
#include "bft_printf.h"
#include "cs_log.h"
#include "cs_map.h"
#include "cs_parall.h"
#include "cs_mesh_location.h"
#include "cs_turbulence_model.h"
Include dependency graph for cs_turbulence_model.c:

Functions

cs_turb_model_tcs_get_glob_turb_model (void)
 Provide acces to cs_glob_turb_model. More...
 
cs_turb_ref_values_tcs_get_glob_turb_ref_values (void)
 Provide acces to cs_glob_turb_ref_values. More...
 
cs_turb_rans_model_tcs_get_glob_turb_rans_model (void)
 Provide acces to cs_glob_turb_rans_model. More...
 
cs_turb_les_model_tcs_get_glob_turb_les_model (void)
 Provide acces to cs_glob_turb_les_model. More...
 

Variables

const double cs_turb_xkappa = 0.42
 
const double cs_turb_vdriest = 25.6
 
const double cs_turb_cstlog = 5.2
 
const double cs_turb_cstlog_rough = 8.5
 
double cs_turb_cstlog_alpha
 
const double cs_turb_apow = 8.3
 
const double cs_turb_bpow = 1.0/7.0
 
double cs_turb_dpow
 
const double cs_turb_cmu = 0.09
 
double cs_turb_cmu025
 
const double cs_turb_ce1 = 1.44
 
const double cs_turb_ce2 = 1.92
 
const double cs_turb_ce4 = 1.20
 
const double cs_turb_sigmak = 1.0
 
double cs_turb_sigmae
 
const double cs_turb_crij1 = 1.80
 
const double cs_turb_crij2 = 0.60
 
const double cs_turb_crij3 = 0.55
 
const double cs_turb_crijp1 = 0.50
 
const double cs_turb_crijp2 = 0.30
 
const double cs_turb_cssge2 = 1.83
 
const double cs_turb_cssgs1 = 1.70
 
const double cs_turb_cssgs2 = -1.05
 
const double cs_turb_cssgr1 = 0.90
 
const double cs_turb_cssgr2 = 0.80
 
const double cs_turb_cssgr3 = 0.65
 
const double cs_turb_cssgr4 = 0.625
 
const double cs_turb_cssgr5 = 0.20
 
const double cs_turb_cebms1 = 1.70
 
const double cs_turb_cebms2 = 0.
 
const double cs_turb_cebmr1 = 0.90
 
const double cs_turb_cebmr2 = 0.80
 
const double cs_turb_cebmr3 = 0.65
 
const double cs_turb_cebmr4 = 0.625
 
const double cs_turb_cebmr5 = 0.20
 
const double cs_turb_cebmr6 = 0.6
 
double cs_turb_csrij
 
const double cs_turb_cebme2 = 1.83
 
const double cs_turb_cebmmu = 0.22
 
const double cs_turb_xcl = 0.122
 
const double cs_turb_xa1 = 0.1
 
const double cs_turb_xct = 6.0
 
const double cs_turb_xceta = 80.0
 
const double cs_turb_cpale1 = 1.44
 
const double cs_turb_cpale2 = 1.83
 
const double cs_turb_cpale3 = 2.3
 
const double cs_turb_cpale4 = 0.4
 
const double cs_turb_cpalse = 1.5
 
const double cs_turb_cpalmu = 0.22
 
const double cs_turb_cpalc1 = 1.7
 
const double cs_turb_cpalc2 = 0.9
 
const double cs_turb_cpalct = 4.0
 
const double cs_turb_cpalcl = 0.164
 
const double cs_turb_cpalet = 75.0
 
const double cs_turb_ckwsk1 = 1.0/0.85
 
const double cs_turb_ckwsk2 = 1.0
 
const double cs_turb_ckwsw1 = 2.0
 
const double cs_turb_ckwsw2 = 1.0/0.856
 
const double cs_turb_ckwbt1 = 0.075
 
const double cs_turb_ckwbt2 = 0.0828
 
double cs_turb_ckwgm1
 
double cs_turb_ckwgm2
 
const double cs_turb_ckwa1 = 0.31
 
const double cs_turb_ckwc1 = 10.0
 
const double cs_turb_csab1 = 0.1355
 
const double cs_turb_csab2 = 0.622
 
const double cs_turb_csasig = 2.0/3.0
 
const double cs_turb_csav1 = 7.1
 
double cs_turb_csaw1
 
const double cs_turb_csaw2 = 0.3
 
const double cs_turb_csaw3 = 2.0
 
const double cs_turb_cssr1 = 1.0
 
const double cs_turb_cssr2 = 12.0
 
const double cs_turb_cssr3 = 1.0
 
const double cs_turb_ccaze2 = 1.83
 
const double cs_turb_ccazsc = 0.119
 
const double cs_turb_ccaza = 4.3
 
const double cs_turb_ccazb = 5.130
 
const double cs_turb_ccazc = 0.453
 
const double cs_turb_ccazd = 0.682
 
const double cs_turb_xlesfl = 2.0
 
const double cs_turb_ales = 1.0
 
const double cs_turb_bles = 1.0/3.0
 
const double cs_turb_csmago = 0.065
 
const double cs_turb_xlesfd = 1.5
 
double cs_turb_smagmx
 
const double cs_turb_cdries = 26.0
 
const double cs_turb_cv2fa1 = 0.05
 
const double cs_turb_cv2fe2 = 1.85
 
const double cs_turb_cv2fmu = 0.22
 
const double cs_turb_cv2fc1 = 1.4
 
const double cs_turb_cv2fc2 = 0.3
 
const double cs_turb_cv2fct = 6.0
 
const double cs_turb_cv2fcl = 0.25
 
const double cs_turb_cv2fet = 110.0
 
const double cs_turb_cwale = 0.25
 
const double cs_turb_xiafm = 0.7
 
const double cs_turb_etaafm = 0.4
 
const double cs_turb_c1trit = 4.15
 
const double cs_turb_c2trit = 0.55
 
const double cs_turb_c3trit = 0.5
 
const double cs_turb_c4trit = 0.
 
const double cs_turb_cthafm = 0.236
 
const double cs_turb_cthdfm = 0.31
 

Detailed Description

Base turbulence model data.

Function Documentation

cs_turb_les_model_t* cs_get_glob_turb_les_model ( void  )

Provide acces to cs_glob_turb_les_model.

needed to initialize structure with GUI

cs_turb_model_t* cs_get_glob_turb_model ( void  )

Provide acces to cs_glob_turb_model.

needed to initialize structure with GUI

cs_turb_rans_model_t* cs_get_glob_turb_rans_model ( void  )

Provide acces to cs_glob_turb_rans_model.

needed to initialize structure with GUI

cs_turb_ref_values_t* cs_get_glob_turb_ref_values ( void  )

Provide acces to cs_glob_turb_ref_values.

needed to initialize structure with GUI

Variable Documentation

const double cs_turb_ales = 1.0

Constant used to define, for each cell $\Omega_i$, the width of the (implicit) filter:

  • $\overline{\Delta}=xlesfl(ales*|\Omega_i|)^{bles}$

Useful if and only if iturb = 40 or 41.

const double cs_turb_apow = 8.3

Werner and Wengle coefficient

const double cs_turb_bles = 1.0/3.0

Constant used to define, for each cell $Omega_i$, the width of the (implicit) filter:

  • $\overline{\Delta}=xlesfl(ales*|\Omega_i|)^{bles}$

Useful if and only if iturb = 40 or 41.

const double cs_turb_bpow = 1.0/7.0

Werner and Wengle coefficient

const double cs_turb_c1trit = 4.15

Coefficient of turbulent DFM flow model.

const double cs_turb_c2trit = 0.55

Coefficient of turbulent DFM flow model.

const double cs_turb_c3trit = 0.5

Coefficient of turbulent DFM flow model.

const double cs_turb_c4trit = 0.

Coefficient of turbulent DFM flow model.

const double cs_turb_ccaza = 4.3

Constants of the Cazalbou rotation/curvature correction.

const double cs_turb_ccazb = 5.130

Constants of the Cazalbou rotation/curvature correction.

const double cs_turb_ccazc = 0.453

Constants of the Cazalbou rotation/curvature correction.

const double cs_turb_ccazd = 0.682

Constants of the Cazalbou rotation/curvature correction.

const double cs_turb_ccaze2 = 1.83

Constants of the Cazalbou rotation/curvature correction.

const double cs_turb_ccazsc = 0.119

Constants of the Cazalbou rotation/curvature correction.

const double cs_turb_cdries = 26.0

Van Driest constant appearing in the van Driest damping function applied to the Smagorinsky constant:

  • $ (1-\exp^{(-y^+/cdries}) $.

Useful if and only if iturb = 40 or 41.

const double cs_turb_ce1 = 1.44

Constant $C_{\varepsilon 1}$ for all the RANS turbulence models except for the v2f and the $k-\omega$ models. Useful if and only if iturb= 20, 21, 30 or 31 ( $k-\varepsilon$ or $R_{ij}-\varepsilon$).

const double cs_turb_ce2 = 1.92

Constant $C_{\varepsilon 2}$ for the $k-\varepsilon$ and $R_{ij}-\varepsilon$ LRR models. Useful if and only if iturb = 20, 21 or 30 ( $k-\varepsilon$ or $R_{ij}-\varepsilon$ LRR).

const double cs_turb_ce4 = 1.20

Coefficient of interfacial coefficient in k-eps, used in Lagrange treatment.

Constant $C_{\varepsilon 4}$ for the interfacial term (Lagrangian module) in case of two-way coupling. Useful in case of Lagrangian modelling, in $k-\varepsilon$ and $R_{ij}-\varepsilon$ with two-way coupling.

const double cs_turb_cebme2 = 1.83

Constant of the Rij-epsilon EBRSM.

const double cs_turb_cebmmu = 0.22

Constant of the Rij-epsilon EBRSM.

const double cs_turb_cebmr1 = 0.90
const double cs_turb_cebmr2 = 0.80
const double cs_turb_cebmr3 = 0.65
const double cs_turb_cebmr4 = 0.625
const double cs_turb_cebmr5 = 0.20
const double cs_turb_cebmr6 = 0.6
const double cs_turb_cebms1 = 1.70

Constant of the Rij-epsilon EBRSM.

const double cs_turb_cebms2 = 0.

Constant of the Rij-epsilon EBRSM.

const double cs_turb_ckwa1 = 0.31

Specific constant of k-omega SST. Constant $a_1$ for the $k-\omega$ SST model. Useful if and only if iturb=60 ( $k-\omega$ SST).

const double cs_turb_ckwbt1 = 0.075

Constant $\beta_1$ for the $k-\omega$ SST model. Useful if and only if iturb=60 ( $k-\omega$ SST).

const double cs_turb_ckwbt2 = 0.0828

Constant $\beta_2$ for the $k-\omega$ SST model. Useful if and only if iturb=60 ( $k-\omega$ SST).

const double cs_turb_ckwc1 = 10.0

Constant $ c_1 $ for the $k-\omega$ SST model. Useful if and only if iturb=60 ( $k-\omega$ SST). Specific constant of k-omega SST.

double cs_turb_ckwgm1

$\frac{\beta_1}{C_\mu}-\frac{\kappa^2}{\sqrt{C_\mu}\sigma_{\omega 1}}$. Constant $\gamma_1$ for the $k-\omega$ SST model. Useful if and only if iturb=60 ( $k-\omega$ SST).

Warning
: $\gamma_1$ is calculated before the call to usipsu. Hence, if $\beta_1$, $C_\mu$, $\kappa$ or $\sigma_{\omega 1}$ is modified in usipsu, cs_turb_ckwgm1 must also be modified in accordance.
double cs_turb_ckwgm2

$\frac{\beta_2}{C_\mu}-\frac{\kappa^2}{\sqrt{C_\mu}\sigma_{\omega 2}}$. Constant $\gamma_2$ for the $k-\omega$ SST model. Useful if and only if iturb=60 ( $k-\omega$ SST).

Warning
: $\gamma_2$ is calculated before the call to usipsu. Hence, if $\beta_2$, $C_\mu$, $\kappa$ or $\sigma_{\omega 2}$ is modified in usipsu, cs_turb_ckwgm2 must also be modified in accordance.
const double cs_turb_ckwsk1 = 1.0/0.85

Constant $\sigma_{k1}$ for the $k-\omega$ SST model. Useful if and only if iturb=60.

const double cs_turb_ckwsk2 = 1.0

Constant $\sigma_{k2}$ for the $k-\omega$ SST model. Useful if and only if iturb=60.

const double cs_turb_ckwsw1 = 2.0

Constant $\sigma_{\omega 1}$ for the $k-\omega$ SST model. Useful if and only if iturb=60 ( $k-\omega$ SST).

const double cs_turb_ckwsw2 = 1.0/0.856

Constant $\sigma_{\omega 2}$ for the $k-\omega$ SST model. Useful if and only if iturb=60 ( $k-\omega$ SST).

const double cs_turb_cmu = 0.09

Constant $C_\mu$ for all the RANS turbulence models except for the v2f model (see cs_turb_cv2fmu for the value of $C_\mu$ in case of v2f modelling). Useful if and only if iturb = 20, 21, 30, 31 or 60 ( $k-\varepsilon$, $R_{ij}-\varepsilon$ or $k-\omega$).

double cs_turb_cmu025

$ C_\mu^\frac{1}{4} $

const double cs_turb_cpalc1 = 1.7

Specific constant of v2f "BL-v2k" (or phi-alpha).

const double cs_turb_cpalc2 = 0.9

Specific constant of v2f "BL-v2k" (or phi-alpha).

const double cs_turb_cpalcl = 0.164

Specific constant of v2f "BL-v2k" (or phi-alpha).

const double cs_turb_cpalct = 4.0

Specific constant of v2f "BL-v2k" (or phi-alpha).

const double cs_turb_cpale1 = 1.44

Specific constant of v2f "BL-v2k" (or phi-alpha).

const double cs_turb_cpale2 = 1.83

Specific constant of v2f "BL-v2k" (or phi-alpha).

const double cs_turb_cpale3 = 2.3

Specific constant of v2f "BL-v2k" (or phi-alpha).

const double cs_turb_cpale4 = 0.4

Specific constant of v2f "BL-v2k" (or phi-alpha).

const double cs_turb_cpalet = 75.0

Specific constant of v2f "BL-v2k" (or phi-alpha).

const double cs_turb_cpalmu = 0.22

Specific constant of v2f "BL-v2k" (or phi-alpha).

const double cs_turb_cpalse = 1.5

Specific constant of v2f "BL-v2k" (or phi-alpha).

const double cs_turb_crij1 = 1.80

Constant $C_1$ for the $R_{ij}-\varepsilon$ LRR model. Useful if and only if iturb=30 ( $R_{ij}-\varepsilon$ LRR).

const double cs_turb_crij2 = 0.60
const double cs_turb_crij3 = 0.55

Constant $C_3$ for the $R_{ij}-\varepsilon$ LRR model. Useful if and only if iturb=30 ( $R_{ij}-\varepsilon$ LRR).

const double cs_turb_crijp1 = 0.50

Constant $C_1^\prime$ for the $R_{ij}-\varepsilon$ LRR model, corresponding to the wall echo terms. Useful if and only if iturb=30 and cs_turb_rans_model_t::irijec=1 ( $R_{ij}-\varepsilon$ LRR).

const double cs_turb_crijp2 = 0.30

Constant $C_2^\prime$ for the $R_{ij}-\varepsilon$ LRR model, corresponding to the wall echo terms. Useful if and only if iturb=30 and cs_turb_rans_model_t::irijec=1 ( $R_{ij}-\varepsilon$ LRR).

const double cs_turb_csab1 = 0.1355

Specific constant of Spalart-Allmaras.

const double cs_turb_csab2 = 0.622

Specific constant of Spalart-Allmaras.

const double cs_turb_csasig = 2.0/3.0

Specific constant of Spalart-Allmaras.

const double cs_turb_csav1 = 7.1

Specific constant of Spalart-Allmaras.

double cs_turb_csaw1

Specific constant of Spalart-Allmaras.

const double cs_turb_csaw2 = 0.3

Specific constant of Spalart-Allmaras.

const double cs_turb_csaw3 = 2.0

Specific constant of Spalart-Allmaras.

const double cs_turb_csmago = 0.065

Smagorinsky constant used in the Smagorinsky model for LES. The sub-grid scale viscosity is calculated by $\displaystyle\mu_{sg}= \rho C_{smago}^2\bar{\Delta}^2\sqrt{2\bar{S}_{ij}\bar{S}_{ij}}$ where $\bar{\Delta}$ is the width of the filter and $\bar{S}_{ij}$ the filtered strain rate.

Useful if and only if iturb = 40.

Note
In theory Smagorinsky constant is 0.18. For a channel, 0.065 value is rather taken.
double cs_turb_csrij

Constant $C_s$ for the $R_{ij}-\varepsilon$ LRR model. Useful if and only if iturb=30 ( $R_{ij}-\varepsilon$ LRR).

const double cs_turb_cssge2 = 1.83

Constant $C_{\varepsilon 2}$ for the $R_{ij}-\varepsilon$ SSG model. Useful if and only if iturb=31 ( $R_{ij}-\varepsilon$ SSG).

const double cs_turb_cssgr1 = 0.90

Constant $C_{r1}$ for the $R_{ij}-\varepsilon$ SSG model. Useful if and only if iturb=31 ( $R_{ij}-\varepsilon$ SSG).

const double cs_turb_cssgr2 = 0.80

Constant $C_{r2}$ for the $R_{ij}-\varepsilon$ SSG model. Useful if and only if iturb=31 ( $R_{ij}-\varepsilon$ SSG).

const double cs_turb_cssgr3 = 0.65

Constant $C_{r3}$ for the $R_{ij}-\varepsilon$ SSG model. Useful if and only if iturb=31 ( $R_{ij}-\varepsilon$ SSG).

const double cs_turb_cssgr4 = 0.625

constant $C_{r4}$ for the $R_{ij}-\varepsilon$ SSG model. Useful if and only if iturb=31 ( $R_{ij}-\varepsilon$ SSG).

const double cs_turb_cssgr5 = 0.20

Constant $C_{r1}$ for the $R_{ij}-\varepsilon$ SSG model. Useful if and only if iturb=31 ( $R_{ij}-\varepsilon$ SSG).

const double cs_turb_cssgs1 = 1.70

Constant $C_{s1}$ for the $R_{ij}-\varepsilon$ SSG model. Useful if and only if iturb=31 ( $R_{ij}-\varepsilon$ SSG).

const double cs_turb_cssgs2 = -1.05

Constant $C_{s2}$ for the $R_{ij}-\varepsilon$ SSG model. Useful if and only if iturb=31 ( $R_{ij}-\varepsilon$ SSG).

const double cs_turb_cssr1 = 1.0

Constant of the Spalart-Shur rotation/curvature correction.

const double cs_turb_cssr2 = 12.0

Constant of the Spalart-Shur rotation/curvature correction.

const double cs_turb_cssr3 = 1.0

Constant of the Spalart-Shur rotation/curvature correction.

const double cs_turb_cstlog = 5.2

Constant of logarithmic smooth law function: $ \dfrac{1}{\kappa} \ln(y^+) + cstlog $ ( $ cstlog = 5.2 $).

Constant of the logarithmic wall function. Useful if and only if iturb >= 10 (mixing length, $k-\varepsilon$, $R_{ij}-\varepsilon$, LES, v2f or $k-\omega$).

double cs_turb_cstlog_alpha

Constant $ \alpha $ for logarithmic law function switching from rough to smooth: $ \dfrac{1}{\kappa} \ln(y u_k/(\nu + \alpha \xi u_k)) + cstlog $ ( $ \alpha = \exp \left( -\kappa (8.5 - 5.2) \right) $).

Useful if and only if iturb >= 10 (mixing length, $k-\varepsilon$, $R_{ij}-\varepsilon$, LES, v2f or $k-\omega$).

const double cs_turb_cstlog_rough = 8.5

Constant of logarithmic rough law function: $ \dfrac{1}{\kappa} \ln(y/\xi) + cstlog_{rough} $ ( $ cstlog_{rough} = 8.5 $).

Constant of the logarithmic wall function. Useful if and only if iturb >= 10 (mixing length, $k-\varepsilon$, $R_{ij}-\varepsilon$, LES, v2f or $k-\omega$).

const double cs_turb_cthafm = 0.236

Constant of GGDH and AFM on the thermal scalar.

const double cs_turb_cthdfm = 0.31

Constant of GGDH and AFM on the thermal scalar.

const double cs_turb_cv2fa1 = 0.05

Constant $a_1$ for the v2f $\varphi$-model. Useful if and only if iturb=50 (v2f $\varphi$-model).

const double cs_turb_cv2fc1 = 1.4

Constant $C_1$ for the v2f $\varphi$-model. Useful if and only if iturb=50 (v2f $\varphi$-model).

const double cs_turb_cv2fc2 = 0.3

Constant $C_2$ for the v2f $\varphi$-model. Useful if and only if iturb=50 (v2f $\varphi$-model).

const double cs_turb_cv2fcl = 0.25

Constant $C_L$ for the v2f $\varphi$-model. Useful if and only if iturb=50 (v2f $\varphi$-model).

const double cs_turb_cv2fct = 6.0

Constant $C_T$ for the v2f $\varphi$-model. Useful if and only if iturb=50 (v2f $\varphi$-model).

const double cs_turb_cv2fe2 = 1.85

Constant $C_{\varepsilon 2}$ for the v2f $\varphi$-model. Useful if and only if iturb=50 (v2f $\varphi$-model).

const double cs_turb_cv2fet = 110.0

Constant $C_\eta$ for the v2f $\varphi$-model. Useful if and only if iturb=50 (v2f $\varphi$-model).

const double cs_turb_cv2fmu = 0.22

Constant $C_\mu$ for the v2f $\varphi$-model. Useful if and only if iturb=50 (v2f $\varphi$-model).

const double cs_turb_cwale = 0.25

Constant of the WALE LES method.

double cs_turb_dpow

Werner and Wengle coefficient

const double cs_turb_etaafm = 0.4

Coefficient of turbulent AFM flow model.

double cs_turb_sigmae

Prandtl number for $\varepsilon$. Useful if and only if iturb= 20, 21, 30, 31 or 50 ( $k-\varepsilon$, $R_{ij}-\varepsilon$ or v2f).

const double cs_turb_sigmak = 1.0

Prandtl number for $k$ with $k-\varepsilon$ and v2f models. Useful if and only if iturb=20, 21 or 50 ( $k-\varepsilon$ or v2f).

double cs_turb_smagmx

Maximum allowed value for the variable $C$ appearing in the LES dynamic model (the "square" comes from the fact that the variable of the dynamic model corresponds to the square of the constant of the Smagorinsky model). Any larger value yielded by the calculation procedure of the dynamic model will be clipped to $ smagmx^2$.

Useful if and only if iturb = 41.

const double cs_turb_vdriest = 25.6

Van Driest constant. (= 25.6)

Useful if and only if cs_glob_wall_functions::iwallf = 5. (Two scales log law at the wall using Van Driest mixing length expression).

const double cs_turb_xa1 = 0.1

Constant in the expression of Ce1' for the Rij-epsilon EBRSM.

const double cs_turb_xceta = 80.0

Constant of the Rij-epsilon EBRSM.

const double cs_turb_xcl = 0.122

Constant of the Rij-epsilon EBRSM.

const double cs_turb_xct = 6.0

Constant of the Rij-epsilon EBRSM.

const double cs_turb_xiafm = 0.7

Coefficient of turbulent AFM flow model.

const double cs_turb_xkappa = 0.42

Karman constant. (= 0.42)

Useful if and only if iturb >= 10. (mixing length, $k-\varepsilon$, $R_{ij}-\varepsilon$, LES, v2f or $k-\omega$).

const double cs_turb_xlesfd = 1.5

Ratio between explicit and explicit filter width for a dynamic model. Constant used to define, for each cell $\Omega_i$, the width of the explicit filter used in the framework of the LES dynamic model: $\widetilde{\overline{\Delta}}=xlesfd\overline{\Delta}$.

Useful if and only if iturb = 41.

const double cs_turb_xlesfl = 2.0

Constant used in the definition of LES filtering diameter: $ \delta = \text{xlesfl} . (\text{ales} . volume)^{\text{bles}} $.