e.g. given a vol pressure field p
functions
{
// Interpolate the pressure field to the faces
surfacep
{
type surfaceInterpolate;
libs ("libfieldFunctionObjects.so");
fields ((p surfacep));
writeControl none;
}
// Average the surface pressure field over the centre faceZone
#includeFunc faceZoneAverage(name=centre, surfacep)
.
.
.
}
and removed the need for the direct dependency of Ostream on keyType which is
not a primitive IO type and relates specifically to dictionary and not all IO.
to conveniently handle the cases where the particular string type does not
matter, e.g. the string equality comparison in the ifeqEntry dictionary function
entry.
The general distribution has been extended to accept cumulative
distribution data, by means of a "cumulative" switch. The calculation of
the mean value has also been corrected for this distribution, and
additional header documentation and parameter checking has been added.
In addition, the distribution models now all print some basic
information (min, max and mean) into the log file to help in checking
that the specification is correct.
Patch contributed by Timo Niemi, VTT.
without the need to handle the VERBATIMSTRING token type explicitly everywhere
in the IO sub-system. Having a specific type is more consistent with the design
and operation of token and much easier to maintain and extend.
Also first step to remove the use of the contrived and incomplete write(token)
functions which are currently needed to handle the string multiple meaning.
by introducing a new specialised type, variable, derived from word with
additional valid characters. This avoids some complex type-juggling in the
parser and keyType in which string was used to represent either a string or a
variable.
solidChemistryModel is not implemented in a general way but specialised to form
the basis of the highly specific pyrolysis mode. The handling of reactions is
hard-coded for forward reactions only, the Jacobian was present but incomplete
so any ODE solvers requiring the Jacobian would either fail, diverge or produce
incorrect results. It is not clear if many or any parts of the
solidChemistryModel are correct, in particular there is no handling for the
solid surface area per unit volume. After a lot of refactoring work it has
become clear that solidChemistryModel needs a complete rewrite and can benefit
from all the recent development work done on the now more general
StandardChemistryModel.
This change adds representation of the shape of a dispersed phase. A
layer has been added to model the relationship between the
characteristic volume of a sizeGroup and its physical diameter.
Previously this relationship was represented by a constant form factor.
Currently, two shape models are available:
- spherical
- fractal (for modelling fractal agglomerates)
The latter introduces the average surface area to volume ratio, kappa,
of the entities in a size group as a secondary field-dependent internal
variable to the population balance equation, which makes the population
balance approach "quasi-"bivariate. From kappa and a constant mass
fractal dimension, a collisional diameter can be derived which affects
the coagulation rates computed by the following models:
- ballisticCollisions
- brownianCollisions
- DahnekeInterpolation
- turbulentShear
The fractal shape modelling also takes into account the effect of sintering
of primary particles on the surface area of the aggregate.
Further additions/changes:
- Time scale filtering for handling large drag and heat transfer
coefficients occurring for particles in the nanometre range
- Aerosol drag model based on Stokes drag with a Knudsen number based
correction (Cunningham correction)
- Reaction driven nucleation
- A complete redesign of the sizeDistribution functionObject
The functionality is demonstrated by a tutorial case simulating the
vapour phase synthesis of titania by titanium tetrachloride oxidation.
Patch contributed by Institute of Fluid Dynamics, Helmholtz-Zentrum Dresden -
Rossendorf (HZDR) and VTT Technical Research Centre of Finland Ltd.
Added two new user parameters to wallDampingModels which allow
additional control over damping to zero in the near vicinity of the
walls.
"zeroWallDist" is a distance from the walls below which the damping
function sets the value of the model to zero.
"zeroInNearWallCells" is a switch which sets the value of the model to
zero in wall adjacent cells, regardless of their actual distance from
the wall.
Patch contributed by Juho Peltola, VTT.