主要是看到文件命名中常有turbulence Models和turbulence transport Models,这两类文件(文件夹)大致分别包含什么内容?
在 OpenFOAM-6 中, turbulentTransportModels 位于 src/TurbulenceModels/incompressible/turbulentTransportModels
, 主要是不可压缩模型,包含到 RunTime Selection (RTS) 机制中 laminar, LES, RAS 中的一些模型,
可以看一下 turbulentTransportModels.C
makeBaseTurbulenceModel
(
geometricOneField,
geometricOneField,
incompressibleTurbulenceModel,
IncompressibleTurbulenceModel,
transportModel
);
// -------------------------------------------------------------------------- //
// Laminar models
// -------------------------------------------------------------------------- //
#include "Stokes.H"
makeLaminarModel(Stokes);
#include "Maxwell.H"
makeLaminarModel(Maxwell);
// -------------------------------------------------------------------------- //
// RAS models
// -------------------------------------------------------------------------- //
#include "SpalartAllmaras.H"
makeRASModel(SpalartAllmaras);
#include "kEpsilon.H"
makeRASModel(kEpsilon);
#include "RNGkEpsilon.H"
makeRASModel(RNGkEpsilon);
...
// -------------------------------------------------------------------------- //
// LES models
// -------------------------------------------------------------------------- //
#include "Smagorinsky.H"
makeLESModel(Smagorinsky);
#include "WALE.H"
makeLESModel(WALE);
#include "kEqn.H"
makeLESModel(kEqn);
...
在 Make/files 中
incompressibleTurbulenceModel.C
turbulentTransportModels/turbulentTransportModels.C
turbulentTransportModels/RAS/qZeta/qZeta.C
turbulentTransportModels/RAS/kkLOmega/kkLOmega.C
turbulentTransportModels/RAS/LamBremhorstKE/LamBremhorstKE.C
turbulentTransportModels/RAS/LienLeschziner/LienLeschziner.C
turbulentTransportModels/RAS/ShihQuadraticKE/ShihQuadraticKE.C
turbulentTransportModels/RAS/LienCubicKE/LienCubicKE.C
BCs = turbulentTransportModels/RAS/derivedFvPatchFields
turbulentTransportModels/derivedFvPatchFields/wallFunctions/alphatWallFunctions/alphatJayatillekeWallFunction/alphatJayatillekeWallFunctionFvPatchScalarField.C
LIB = $(FOAM_LIBBIN)/libincompressibleTurbulenceModels
第三行包含了 turbulentTransportModels.C 文件,而且在 Make/options 里面,
EXE_INC = \
-I../turbulenceModels/lnInclude \
-I$(LIB_SRC)/transportModels \
-I$(LIB_SRC)/finiteVolume/lnInclude \
-I$(LIB_SRC)/meshTools/lnInclude \
LIB_LIBS = \
-lincompressibleTransportModels \ # 包含了不可压的粘度模型
-lturbulenceModels \
-lfiniteVolume \
-lmeshTools
因此,可以说 turbulentTransportModels 是不可压缩的。然而,以下的不可压缩模型还没有加入到 RunTime Selection (RTS) 机制中。
- kkLOmega
- LamBremhorstKE
- LienCubicKE
- LienLeschziner
- qZeta
- ShihQuadraticKE
而 turbulenceModels 则有 laminar, LES, RAS,包含了不可压缩和可压缩的模型,是抽象的模型,在其下,又包含了一些实例,如 RAS 的 kEpsilon 。其他的 compressible 湍流模型则又利用 turbulenceModels 下的 laminar, LES, RAS 进行 RTS 使用。