so that the specification of the name and dimensions are optional in property dictionaries.
Update tutorials so that the name of the dimensionedScalar property is
no longer duplicated but optional dimensions are still provided and are
checked on read.
This malloc overrides the one provided by GLIBC and calls mallocNan
which initializes the allocated block of memory to NaN if enabled by the
FOAM_SETNAN environment variable.
This resolves a whole range of issues and work-arounds with earlier
releases. This version of icpc is more or less compatible with the
latest gcc and clang compilers and only required one hack to avoid
warnings from PackedBoolList.H.
The interfacial temperature is assumed equal to the saturation
temperature. Only a single species is considered volatile and the other
species to not affect the mass-transfer.
Added calls to setFluxRequired for p in all incompressible solvers which
avoids the need to add fluxRequired entries in fvSchemes dictionary.
Will add calls to setFluxRequired to the rest of the solvers.
This scheme is equivalent to the CoBlended scheme except that the Courant
number is evaluated for cells using the same approach as use in the
finite-volume solvers and then interpolated to the faces rather than being
estimated directly at the faces based on the flux. This is a more
consistent method for evaluating the Courant number but suffers from the
need to interpolate which introduces a degree of freedom. However, the
interpolation scheme for "Co" is run-time selected and may be specified in
"interpolationSchemes" and "localMax" might be most appropriate.
Example of the cellCoBlended scheme specification using LUST for Courant
numbers less than 1 and linearUpwind for Courant numbers greater than 10:
\verbatim
divSchemes
{
.
.
div(phi,U) Gauss cellCoBlended 1 LUST grad(U) 10 linearUpwind grad(U);
.
.
}
interpolationSchemes
{
.
.
interpolate(Co) localMax;
.
.
}
\endverbatim
The standard merge-algorithm is N^2 over the face-points and uses a
geometric proximity test for the merge. These are both choices for
implementation simplicity and are rather inefficient for large meshes.
I have now implemented an experimental linear topological merge
algorithm which is VERY fast and effective for meshes of any size.
Currently it will merge internal faces on meshes of arbitrary complexity
but does not yet handle edge or face collapse needed for wedges and
other degenerate blocks.
The new fast-merge algorithm may be selected using the optional
"fastMerge" entry:
fastMerge yes;
and if not present the standard N^2 algorithm will be used.
Henry G. Weller
CFD Direct
Currently this is implemented only for the Antoine equation, for the
other more complex models an iterative inversion from pressure to
temperature is required.
posPart returns a value or field in which the value or values are set to
0 if negative
negPart returns a value or field in which the value or values are set to
0 if positive