This boundary condition now solves for the wall temperature by interval
bisection, which should be significantly more robust than the previous
fixed-point iteration procedure. There is a new non-dimensional
"tolerance" setting that controls how tightly this solution procedure
solves the wall temperature. The "relax" setting is no longer used.
The boundary condition no longer triggers re-evaluation of the
temperature condition in order to re-calculate the heat flux within the
solution iteration. Instead, it extracts physical coefficients from the
form of the boundary condition and uses these to form a linearised
approximation of the heat flux. This is a more general approach, and
will not trigger side-effects associated with re-evaluating the
temperature condition.
The fixedMultiphaseHeatFlux condition has been replaced by a
uniformFixedMultiphaseHeatFlux condition, which constructs a mixed
constraint which portions a specified heat flux between the phases in
such a way as to keep the boundary temperature uniform across all
phases. This can be applied to all phases. It is no longer necessary to
apply a heat flux model to one "master" phase, then map the resulting
temperature to the others. An example specification of this boundary
condition is as follows:
wall
{
type uniformFixedMultiphaseHeatFlux;
q 1000;
relax 0.3;
value $internalField;
}
The wall boiling tutorials have been updated to use these new functions,
and time-varying heat input has been used to replace the
stop-modify-restart pattern present in the single-region cases.
64 lines
1.5 KiB
Plaintext
64 lines
1.5 KiB
Plaintext
/*--------------------------------*- C++ -*----------------------------------*\
|
|
========= |
|
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
|
\\ / O peration | Website: https://openfoam.org
|
|
\\ / A nd | Version: dev
|
|
\\/ M anipulation |
|
|
\*---------------------------------------------------------------------------*/
|
|
FoamFile
|
|
{
|
|
format ascii;
|
|
class volScalarField;
|
|
location "0";
|
|
object T.liquid;
|
|
}
|
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
|
|
dimensions [ 0 0 0 1 0 0 0 ];
|
|
|
|
internalField uniform 341.67;
|
|
|
|
boundaryField
|
|
{
|
|
inlet
|
|
{
|
|
type fixedValue;
|
|
value $internalField;
|
|
}
|
|
outlet
|
|
{
|
|
type inletOutlet;
|
|
phi phi.liquid;
|
|
inletValue $internalField;
|
|
value $internalField;
|
|
}
|
|
wall
|
|
{
|
|
type uniformFixedMultiphaseHeatFlux;
|
|
q
|
|
{
|
|
type scale;
|
|
value 73890;
|
|
scale
|
|
{
|
|
type linearRamp;
|
|
start 0.5;
|
|
duration 0.01;
|
|
}
|
|
}
|
|
relax 0.3;
|
|
value $internalField;
|
|
}
|
|
front
|
|
{
|
|
type wedge;
|
|
}
|
|
back
|
|
{
|
|
type wedge;
|
|
}
|
|
}
|
|
|
|
|
|
// ************************************************************************* //
|