BUG: Fixing non-Isotropic treatment for kappa at boundary

This commit is contained in:
sergio 2014-05-19 11:23:41 +01:00
parent 3940d74d2b
commit 512931dba2
2 changed files with 21 additions and 14 deletions

View file

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2011-2014 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -63,7 +63,8 @@ Foam::temperatureCoupledBase::temperatureCoupledBase
:
patch_(patch),
method_(KMethodTypeNames_[calculationType]),
kappaName_(kappaName)
kappaName_(kappaName),
alphaAniName_(alphaAniName_)
{}
@ -75,7 +76,8 @@ Foam::temperatureCoupledBase::temperatureCoupledBase
:
patch_(patch),
method_(KMethodTypeNames_.read(dict.lookup("kappa"))),
kappaName_(dict.lookup("kappaName"))
kappaName_(dict.lookup("kappaName")),
alphaAniName_(dict.lookupOrDefault<word>("alphaAniName","Anialpha"))
{}
@ -136,17 +138,18 @@ Foam::tmp<Foam::scalarField> Foam::temperatureCoupledBase::kappa
const solidThermo& thermo =
mesh.lookupObject<solidThermo>("thermophysicalProperties");
const vectorField kappa(thermo.Kappa(patch_.index()));
const symmTensorField& Anialpha =
patch_.lookupPatchField<volSymmTensorField, scalar>
(
alphaAniName_
);
tmp<scalarField> tmeanKappa(Tp);
scalarField& meanKappa = tmeanKappa();
forAll(meanKappa, i)
{
meanKappa[i] = (kappa[i].x() + kappa[i].y() + kappa[i].z())/3.0;
}
const symmTensorField kappa =
Anialpha*thermo.Cp()().boundaryField()[patch_.index()];
return meanKappa;
break;
const vectorField n(patch_.nf());
return n & kappa & n;
}
case mtLookup:

View file

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2011-2014 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -34,7 +34,8 @@ Description
- 'fluidThermo' : use fluidThermo and default compressible::turbulenceModel
to calculate kappa
- 'solidThermo' : use solidThermo kappa()
- 'directionalSolidThermo' directionalKappa()
- 'directionalSolidThermo': uses look up for volSymmTensorField for
transformed kappa vector. Named 'Anialpha' in solid solver
SourceFiles
temperatureCoupledBase.C
@ -88,6 +89,9 @@ private:
//- Name of thermal conductivity field (if looked up from database)
const word kappaName_;
//- Name of the non-Isotropic alpha (default: Anialpha)
const word alphaAniName_;
public: