diff --git a/src/TurbulenceModels/turbulenceModels/eddyViscosity/eddyViscosity.C b/src/TurbulenceModels/turbulenceModels/eddyViscosity/eddyViscosity.C index 70307f6456db4659c68966cd66dbc6849641d232..641f012bee2b4a57d26ef88be9b37f12064e9364 100644 --- a/src/TurbulenceModels/turbulenceModels/eddyViscosity/eddyViscosity.C +++ b/src/TurbulenceModels/turbulenceModels/eddyViscosity/eddyViscosity.C @@ -84,6 +84,23 @@ Foam::eddyViscosity<BasicTurbulenceModel>::R() const { tmp<volScalarField> tk(k()); + // Get list of patchField type names from k + wordList patchFieldTypes(tk().boundaryField().types()); + + // For k patchField types which do not have an equivalent for symmTensor + // set to calculated + forAll(patchFieldTypes, i) + { + if + ( + !fvPatchField<symmTensor>::patchConstructorTablePtr_ + ->found(patchFieldTypes[i]) + ) + { + patchFieldTypes[i] = calculatedFvPatchField<symmTensor>::typeName; + } + } + return tmp<volSymmTensorField> ( new volSymmTensorField @@ -98,7 +115,7 @@ Foam::eddyViscosity<BasicTurbulenceModel>::R() const false ), ((2.0/3.0)*I)*tk() - (nut_)*dev(twoSymm(fvc::grad(this->U_))), - tk().boundaryField().types() + patchFieldTypes ) ); }