using Function1 and supporting all the standard Function1s including tabulated
and coded.
tutorials/multiphase/interFoam/laminar/sloshingTank3D6DoF updated to use
sixDoFMotion.
The interpolationLookUpTable is highly specialised for absorptionEmissionModels
which did not need to be templated and is now located in the appropriate
directory and namespace.
The current rough wall functions cover most requirements and there is no clear
need to maintain nutUTabulatedWallFunctionFvPatchScalarField and associated
clutter.
This improves paraview's handling of VTK files which only contain
points. It means the points are visible without glyph-ing, and provides
the necessary input for some filters to operate correctly.
to improve robustness and maintainability. Now all switches and constants are
set correctly on constructions without the need for dynamic update after the
system/controlDict is read. This significantly simplifies the code and make it
much easier to add new switches, constants and settings without the need to
ensure they are registered to a database for update.
Description
Multi-component Fickian and eddy-diffusivity turbulent based temperature
gradient heat flux model for RAS or LES of turbulent flow with optional
Soret thermal diffusion of species.
Currently the diffusion coefficients are constant but temperature and
pressure dependency will be added.
The heat flux source is implemented as an implicit energy correction to the
temperature gradient based flux source. At convergence the energy
correction is 0.
Usage
\verbatim
RAS
{
model FickianEddyDiffusivity;
Prt 0.85;
Sct 0.7;
D (1e-5 2e-5 1e-5); // [m^2/s]
DT (1e-5 2e-5 1e-5); // [kg/m/s] Optional
}
\endverbatim
Moved the switch and constant reading functionality from TimeIO to more rational
locations.
Added registration of InfoSwitches which are not run-time controlled by other
means.
combustionModels now use the virtual functions provided by SpecieMixture to
avoid the complexity in code and compilation of templating on the ThermoType.
Additionally the models based on singleStepCombustion now use the concrete
reaction base class to avoid the templating on ThermoType introduced by the
Reaction type.
The streamLines function object now writes out "age" by default. This is
calculated as the total integration time from the starting point of the
streamline. This value can be negative if tracking is performed in the
reverse direction. Writing "age" can be deactivated by means of a
"writeAge no;" entry in the function object specification.
The wallHeatFlux field is now intensive with units [W/m^2]
and the minimum, maximum, patch integrated Q [W] and patch average q [W-m^2]
are written in postProcessing/wallHeatFlux/<time>/wallHeatFlux.dat
and renamed defaultSpecie as its mass fraction is derived from the sum of the
mass fractions of all other species and it need not be inert but must be present
everywhere, e.g. N2 in air/fuel combustion which can be involved in the
production of NOx.
The previous name inertSpecie in thermophysicalProperties is supported for
backward compatibility.
This avoids attempting to write temporary fields before they have been created.
The executeAtStart can be set to 'yes' in the writeObjects dictionary or the
functions
{
#includeFunc writeObjects(executeAtStart = yes, <field1>, <field2>...)
}
This tutorial now serves as an example of how to compute flow-rates
through zones defined by triangulated surfaces.
A small fix has also been added to searchableSurfaceToFaceZone to
improve robustness on ambiguous cases.
This set now produces a contiguous face zone even when cell centres fall
exactly on the plane of the searchable surface.
The set now calculates the intersections between the
cell-centre-to-cell-centre vectors for every face, and uses those to to
categorise the adjacent cells either side of the set as either above or
below the surface. Then, faces which border both an above and a below
cell are included. This guarantees a contiguous result.
Previously faces for which an intersection was found were included
directly, which resulted in a non-contiguous result when the
intersections became ambiguous; i.e., when the surface passed very close
to the cell centres.
Temporary fields returned from functions which are then reused by the calling
function can now be cached by declaring them as non-reusable to guarantee their
integrity. *Field::New functions have been updated to use this new
functionality and it is recommended to use these functions to create temporary
fields rather than "new *Field".