diff --git a/src/TurbulenceModels/turbulenceModels/RAS/LRR/LRR.C b/src/TurbulenceModels/turbulenceModels/RAS/LRR/LRR.C index 37391cc37495c2996e598e7a24bed1cd99311c43..7dfa45a031a01df36880bbaf7c1277a1fb469458 100644 --- a/src/TurbulenceModels/turbulenceModels/RAS/LRR/LRR.C +++ b/src/TurbulenceModels/turbulenceModels/RAS/LRR/LRR.C @@ -238,6 +238,34 @@ bool LRR<BasicTurbulenceModel>::read() } +template<class BasicTurbulenceModel> +tmp<volSymmTensorField> LRR<BasicTurbulenceModel>::DREff() const +{ + return tmp<volSymmTensorField> + ( + new volSymmTensorField + ( + "DREff", + (Cs_*(this->k_/this->epsilon_))*this->R_ + I*this->nu() + ) + ); +} + + +template<class BasicTurbulenceModel> +tmp<volSymmTensorField> LRR<BasicTurbulenceModel>::DepsilonEff() const +{ + return tmp<volSymmTensorField> + ( + new volSymmTensorField + ( + "DepsilonEff", + (Ceps_*(this->k_/this->epsilon_))*this->R_ + I*this->nu() + ) + ); +} + + template<class BasicTurbulenceModel> void LRR<BasicTurbulenceModel>::correct() { @@ -269,7 +297,7 @@ void LRR<BasicTurbulenceModel>::correct() ( fvm::ddt(alpha, rho, epsilon_) + fvm::div(alphaRhoPhi, epsilon_) - - fvm::laplacian(Ceps_*alpha*rho*(k_/epsilon_)*R, epsilon_) + - fvm::laplacian(alpha*rho*DepsilonEff(), epsilon_) == Ceps1_*alpha*rho*G*epsilon_/k_ - fvm::Sp(Ceps2_*alpha*rho*epsilon_/k_, epsilon_) @@ -310,7 +338,7 @@ void LRR<BasicTurbulenceModel>::correct() ( fvm::ddt(alpha, rho, R) + fvm::div(alphaRhoPhi, R) - - fvm::laplacian(Cs_*alpha*rho*(k_/epsilon_)*R, R) + - fvm::laplacian(alpha*rho*DREff(), R) + fvm::Sp(C1_*alpha*rho*epsilon_/k_, R) == alpha*rho*P diff --git a/src/TurbulenceModels/turbulenceModels/RAS/LRR/LRR.H b/src/TurbulenceModels/turbulenceModels/RAS/LRR/LRR.H index 2af0da241098458e8bd7b803f02357b8dfa14871..68c9bd2d7d93615ebccfebe84454112c6e3b1e1b 100644 --- a/src/TurbulenceModels/turbulenceModels/RAS/LRR/LRR.H +++ b/src/TurbulenceModels/turbulenceModels/RAS/LRR/LRR.H @@ -195,6 +195,12 @@ public: return epsilon_; } + //- Return the effective diffusivity for R + tmp<volSymmTensorField> DREff() const; + + //- Return the effective diffusivity for epsilon + tmp<volSymmTensorField> DepsilonEff() const; + //- Solve the turbulence equations and correct eddy-Viscosity and // related properties virtual void correct(); diff --git a/src/TurbulenceModels/turbulenceModels/RAS/SSG/SSG.C b/src/TurbulenceModels/turbulenceModels/RAS/SSG/SSG.C index 720c1f413af06a37365081fee2270ee3a945d9d3..4d61b3db6537f12de9e636aef4213ee83d02143c 100644 --- a/src/TurbulenceModels/turbulenceModels/RAS/SSG/SSG.C +++ b/src/TurbulenceModels/turbulenceModels/RAS/SSG/SSG.C @@ -248,6 +248,34 @@ bool SSG<BasicTurbulenceModel>::read() } +template<class BasicTurbulenceModel> +tmp<volSymmTensorField> SSG<BasicTurbulenceModel>::DREff() const +{ + return tmp<volSymmTensorField> + ( + new volSymmTensorField + ( + "DREff", + (Cs_*(this->k_/this->epsilon_))*this->R_ + I*this->nu() + ) + ); +} + + +template<class BasicTurbulenceModel> +tmp<volSymmTensorField> SSG<BasicTurbulenceModel>::DepsilonEff() const +{ + return tmp<volSymmTensorField> + ( + new volSymmTensorField + ( + "DepsilonEff", + (Ceps_*(this->k_/this->epsilon_))*this->R_ + I*this->nu() + ) + ); +} + + template<class BasicTurbulenceModel> void SSG<BasicTurbulenceModel>::correct() { @@ -279,7 +307,7 @@ void SSG<BasicTurbulenceModel>::correct() ( fvm::ddt(alpha, rho, epsilon_) + fvm::div(alphaRhoPhi, epsilon_) - - fvm::laplacian(Ceps_*alpha*rho*(k_/epsilon_)*R, epsilon_) + - fvm::laplacian(alpha*rho*DepsilonEff(), epsilon_) == Ceps1_*alpha*rho*G*epsilon_/k_ - fvm::Sp(Ceps2_*alpha*rho*epsilon_/k_, epsilon_) @@ -324,15 +352,15 @@ void SSG<BasicTurbulenceModel>::correct() ( fvm::ddt(alpha, rho, R) + fvm::div(alphaRhoPhi, R) - - fvm::laplacian(Cs_*alpha*rho*(k_/epsilon_)*R, R) + - fvm::laplacian(alpha*rho*DREff(), R) + fvm::Sp(((C1_/2)*epsilon_ + (C1s_/2)*G)*alpha*rho/k_, R) == alpha*rho*P - ((1.0/3.0)*I)*(((2.0 - C1_)*epsilon_ - C1s_*G)*alpha*rho) - + (C2_*(alpha*rho*epsilon_))*dev(symm(b&b)) // symm should not be needed + + (C2_*(alpha*rho*epsilon_))*dev(innerSqr(b)) + alpha*rho*k_ *( - (C3_ - C3s_*mag(b))*S + (C3_ - C3s_*mag(b))*dev(S) + C4_*dev(twoSymm(b&S)) + C5_*twoSymm(b&Omega) ) diff --git a/src/TurbulenceModels/turbulenceModels/RAS/SSG/SSG.H b/src/TurbulenceModels/turbulenceModels/RAS/SSG/SSG.H index 85e08eaccadb772e8f316533de4ec5e9cb4e0deb..a0977fba606ffaf583ca4c62a8757ec0ac4267c7 100644 --- a/src/TurbulenceModels/turbulenceModels/RAS/SSG/SSG.H +++ b/src/TurbulenceModels/turbulenceModels/RAS/SSG/SSG.H @@ -186,6 +186,12 @@ public: return epsilon_; } + //- Return the effective diffusivity for R + tmp<volSymmTensorField> DREff() const; + + //- Return the effective diffusivity for epsilon + tmp<volSymmTensorField> DepsilonEff() const; + //- Solve the turbulence equations and correct eddy-Viscosity and // related properties virtual void correct();