OpenCFD commence testing of OpenFOAM version1.3alpha (1st Feb 2006)
OpenCFD are pleased to announce that they have begun alpha testing of
version 1.3 of their OpenFOAM software. Many of the developments in the release
are towards improving the efficiency and robustness of OpenFOAM for
large-scale engineering CFD, including low and high speed aerodynamics, heat
transfer and buoyancy-driven flows. The changes and developments are as
follows:
Improvements in speed and memory storage through careful optimisation
using the latest generation profiling tools. The changes include:
the use of template loop unrolling;
significant rewriting of the AMG solver;
simplification of the mesh structures;
more complete handling of temporary fields.
Major reorganisation and development of the core libraries including:
separation of finite volume from the main library so that other
discretisation techniques may be easily supported;
reordering of libraries to prevent cyclic dependencies;
polyMesh now reads and writes the more efficient owner/neighbour
addressing rather than cells;
separation of the current mesh topology modification method from
the internals of polyMesh so that other, more flexible and efficient
procedures can be selected;
generalisation of meshes with topology changes;
new sphericalTensor type added;
physical constants are no longer hard-coded but read in from the main
controlDict enabling the use of a different base system of units from
the default (SI);
new more efficient implementation of constraints;
support for both float and double scalar types, allowing mixed type
codes to be written and easier building of the OpenFOAM with floats
rather than double (the default).
Developments to the solvers include:
rhopSonicFoam: changes in discretisation to improve resolution of
expansion waves, contacts and shocks;
icoDyMFoam: first demonstration of a solver with integrated mesh
motion and topology change;
buoyantFoam solver family: developments and additions for practical
use.
Developments of utilities include:
several new post-processing utilities added;
new and improved mesh conversion utilities such as ccm24ToFoam
(handling of un-compacted boundary regions), gmshToFoam (handling
of cell and face zones), plot3dToFoam (handling of collapsed
hexahedra), polyDualMesh (converts polyMesh into its vertex-based
dual mesh);
improvements to mesh manipulation utilities such as createPatch (allow
creation of multiple patches) and subsetMesh (added subsetting of
surface fields).
General operation of OpenFOAM:
automatic stack trace on code termination;
Parallel running of OpenFOAM has been improved as follows:
domain decomposition now creates a full set of patches for
each processor allowing easy implementation of integral boundary
conditions, e.g. fixed mass flow rate;
debugging parallel runs made easier by processor-labelled error
messages;
rewriting the AMG solver has improved performance in parallel;
faster parallel communications attained by using a direct transfer
mechanism, avoiding the need for a transfer buffer.
Discretisation schemes:
improved ’V’ schemes for momentum and other vector transport;
new generalised linear upwind discretisation scheme based on limited
gradients;
new more flexible gradient limiter for accurate, yet stable operation on
distorted meshes;
improved handling of least squares gradient evaluation on bad
tetrahedral meshes.
corrections to the fourth-order gradient scheme.
Changes to modelling:
new constraint implementation used to enforce the near-wall epsilon
value in wall-function implementations replacing the old ”hack” of
boosting the diagonal;
new wall function implementations for Spalart-Allmaras turbulence
model.