interfaceProperties: Add support for re-read of sigma and cAlpha

Note that currently when transportProperties is changed sigma is re-read
from this dictionary but cAlpha is read from fvSolution but cAlpha is
not re-read when fvSolution is changed but transportProperties is not
touched.  To avoid this problem cAlpha would need to be moved to the
transportProperties dictionary which is not ideal or moved out of the
interfaceProperties class back to the top-level solver.

Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=1657
This commit is contained in:
Henry
2015-04-17 20:00:29 +01:00
parent 341bdc8aa1
commit e144940047
3 changed files with 24 additions and 4 deletions

View File

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2014 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2014-2015 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -44,7 +44,7 @@ namespace Foam
{
/*---------------------------------------------------------------------------*\
Class immiscibleIncompressibleTwoPhaseMixture Declaration
Class immiscibleIncompressibleTwoPhaseMixture Declaration
\*---------------------------------------------------------------------------*/
class immiscibleIncompressibleTwoPhaseMixture
@ -78,6 +78,14 @@ public:
incompressibleTwoPhaseMixture::correct();
interfaceProperties::correct();
}
//- Read base transportProperties dictionary
virtual bool read()
{
return
incompressibleTwoPhaseMixture::read()
&& interfaceProperties::read();
}
};

View File

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011-2014 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -222,4 +222,13 @@ Foam::interfaceProperties::nearInterface() const
}
bool Foam::interfaceProperties::read()
{
alpha1_.mesh().solverDict(alpha1_.name()).lookup("cAlpha") >> cAlpha_;
transportPropertiesDict_.lookup("sigma") >> sigma_;
return true;
}
// ************************************************************************* //

View File

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011-2014 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -152,6 +152,9 @@ public:
{
calculateK();
}
//- Read transportProperties dictionary
bool read();
};