mirror of
https://develop.openfoam.com/Development/openfoam.git
synced 2025-11-28 03:28:01 +00:00
Restructured.
This commit is contained in:
230
ReleaseNotes-1.6
230
ReleaseNotes-1.6
@ -73,19 +73,6 @@
|
|||||||
+ Export *new* environment variable =FOAM_CASENAME= that contains the
|
+ Export *new* environment variable =FOAM_CASENAME= that contains the
|
||||||
name part of the =FOAM_CASE= environment variable.
|
name part of the =FOAM_CASE= environment variable.
|
||||||
|
|
||||||
*** Numerics
|
|
||||||
+ *new* polynomial-fit higher-order interpolation schemes:
|
|
||||||
- =biLinearFit=
|
|
||||||
- =linearFit=
|
|
||||||
- =quadraticLinearFit=
|
|
||||||
- =quadraticFit=
|
|
||||||
- =linearPureUpwindFit=
|
|
||||||
- =quadraticLinearPureUpwindFit=
|
|
||||||
- =quadraticLinearUpwindFit=
|
|
||||||
- =quadraticUpwindFit=
|
|
||||||
- =cubicUpwindFit=
|
|
||||||
+ *new* polynomial-fit higher-order Sn-Grad: =quadraticFitSnGrad=.
|
|
||||||
|
|
||||||
*** Turbulence modelling
|
*** Turbulence modelling
|
||||||
+ Major development of turbulence model libraries to give extra flexibility
|
+ Major development of turbulence model libraries to give extra flexibility
|
||||||
at the solver level. For solvers that can support either RAS/LES
|
at the solver level. For solvers that can support either RAS/LES
|
||||||
@ -188,6 +175,19 @@
|
|||||||
+ Significant development of the libraries offering molecular dynamics
|
+ Significant development of the libraries offering molecular dynamics
|
||||||
simulation functionality - see =mdFoam= and =mdEquilibrationFoam= below.
|
simulation functionality - see =mdFoam= and =mdEquilibrationFoam= below.
|
||||||
|
|
||||||
|
*** Numerics
|
||||||
|
+ *new* polynomial-fit higher-order interpolation schemes:
|
||||||
|
- =biLinearFit=
|
||||||
|
- =linearFit=
|
||||||
|
- =quadraticLinearFit=
|
||||||
|
- =quadraticFit=
|
||||||
|
- =linearPureUpwindFit=
|
||||||
|
- =quadraticLinearPureUpwindFit=
|
||||||
|
- =quadraticLinearUpwindFit=
|
||||||
|
- =quadraticUpwindFit=
|
||||||
|
- =cubicUpwindFit=
|
||||||
|
+ *new* polynomial-fit higher-order Sn-Grad: =quadraticFitSnGrad=.
|
||||||
|
|
||||||
*** *New* surfMesh library
|
*** *New* surfMesh library
|
||||||
Provides a more efficient storage mechanism than possible with =triSurface=
|
Provides a more efficient storage mechanism than possible with =triSurface=
|
||||||
without restrictions on the shape of the face (templated parameter).
|
without restrictions on the shape of the face (templated parameter).
|
||||||
@ -196,112 +196,75 @@
|
|||||||
=triSurface=).
|
=triSurface=).
|
||||||
+ =surfMesh= class - for reading/writing in native OpenFOAM format.
|
+ =surfMesh= class - for reading/writing in native OpenFOAM format.
|
||||||
|
|
||||||
* Solver restructuring
|
* Solvers
|
||||||
The upgrade to the turbulence models means that the simulation type, i.e.
|
*** Solver restructuring
|
||||||
laminar, RAS or LES can be selected at run time. This has allowed a reduction
|
The upgrade to the turbulence models means that the simulation type, i.e.
|
||||||
in the number of solvers, simplifying the overall code structure
|
laminar, RAS or LES can be selected at run time. This has allowed a reduction
|
||||||
+ Solvers which support laminar, RAS and LES:
|
in the number of solvers, simplifying the overall code structure
|
||||||
- =turbFoam=, =oodles= \rightarrow =pisoFoam=.
|
+ Solvers which support laminar, RAS and LES:
|
||||||
- =turbDyMFoam= \rightarrow =pimpleDyMFoam=.
|
- =turbFoam=, =oodles= \rightarrow =pisoFoam=.
|
||||||
- =rhoTurbFoam=, =coodles= \rightarrow =rhoPisoFoam=.
|
- =turbDyMFoam= \rightarrow =pimpleDyMFoam=.
|
||||||
- =xoodles= \rightarrow absorbed into =XiFoam=.
|
- =rhoTurbFoam=, =coodles= \rightarrow =rhoPisoFoam=.
|
||||||
- =buoyantFoam=, =lesBuoyantFoam= \rightarrow =buoyantPisoFoam=.
|
- =xoodles= \rightarrow absorbed into =XiFoam=.
|
||||||
- =interFoam=, =rasInterFoam=, =lesInterFoam= \rightarrow =interFoam=.
|
- =buoyantFoam=, =lesBuoyantFoam= \rightarrow =buoyantPisoFoam=.
|
||||||
- =lesCavitatingFoam=, =rasCavitatingFoam= \rightarrow =cavitatingFoam=.
|
- =interFoam=, =rasInterFoam=, =lesInterFoam= \rightarrow =interFoam=.
|
||||||
+ Solvers which support LES only:
|
- =lesCavitatingFoam=, =rasCavitatingFoam= \rightarrow =cavitatingFoam=.
|
||||||
- =channelOodles= \rightarrow =channelFoam= (LES).
|
+ Solvers which support LES only:
|
||||||
|
- =channelOodles= \rightarrow =channelFoam= (LES).
|
||||||
|
+ =pd= replaced by static pressure =p=. All solvers in which buoyancy affects
|
||||||
|
might be strong have been converted from using =pd= to =p= with improved
|
||||||
|
numerics to give equally good accuracy and stability. This change is
|
||||||
|
prompted by the need to remove the confusion surrounding the meaning and
|
||||||
|
purpose of =pd=.
|
||||||
|
+ =g= (acceleration due to gravity) is now a *new*
|
||||||
|
=uniformDimensionedVectorField= which has the behaviour of a field, is
|
||||||
|
registered to an =objectRegistry=, but stores only a single value. Thus
|
||||||
|
=g= and other =UniformDimensionedFields= can be created and looked-up
|
||||||
|
elsewhere in the code, /e.g./ in =fvPatchFields=.
|
||||||
|
|
||||||
* General changes
|
*** Solver control improvements
|
||||||
+ =pd= replaced by static pressure =p=. All solvers in which buoyancy affects
|
Now uses consistent dictionary entries for the solver controls.
|
||||||
might be strong have been converted from using =pd= to =p= with improved
|
+ This Allows dictionary substitutions and regular expressions in
|
||||||
numerics to give equally good accuracy and stability. This change is
|
/system/fvSolution/.
|
||||||
prompted by the need to remove the confusion surrounding the meaning and
|
+ The old solver control syntax is still supported (warning emitted), but
|
||||||
purpose of =pd=.
|
the *new* =foamUpgradeFvSolution= utility can be used to convert
|
||||||
|
/system/fvSolution/ to the new format.
|
||||||
|
|
||||||
+ =g= (acceleration due to gravity) is now a *new*
|
*** *New* Solvers
|
||||||
=uniformDimensionedVectorField= which has the behaviour of a field, is
|
+ =buoyantBoussinesqSimpleFoam= Steady state heat transfer solver using a
|
||||||
registered to an =objectRegistry=, but stores only a single value. Thus
|
Boussinesq approximation for buoyancy, with laminar, RAS or LES turbulence
|
||||||
=g= and other =UniformDimensionedFields= can be created and looked-up
|
modelling.
|
||||||
elsewhere in the code, /e.g./ in =fvPatchFields=.
|
+ =buoyantBoussinesqPisoFoam= Transient heat transfer solver using a
|
||||||
|
Boussinesq approximation for buoyancy, with laminar, RAS or LES turbulence
|
||||||
|
modelling.
|
||||||
|
+ =coalChemistryFoam= Transient, reacting lagrangian solver, employing a coal
|
||||||
|
cloud and a thermo cloud, with chemistry, and laminar, RAS or LES turbulence
|
||||||
|
modelling.
|
||||||
|
+ =porousExplicitSourceReactingParcelFoam= Transient, reacting lagrangian
|
||||||
|
solver, employing a single phase reacting cloud, with porous media, explicit
|
||||||
|
mass sources, and laminar, RAS or LES turbulence modelling.
|
||||||
|
+ =rhoReactingFoam= Density-based thermodynamics variant of the reactingFoam
|
||||||
|
solver, i.e. now applicable to liquid systems.
|
||||||
|
+ =dsmcFoam= DSMC (Direct Simulation Monte-Carlo) solver for rarefied gas
|
||||||
|
dynamics simulations, able to simulate mixtures of an arbitrary number of
|
||||||
|
gas species. The variable hard sphere collision model with Larsen-Borgnakke
|
||||||
|
internal energy redistribution (see "Molecular Gas Dynamics and the Direct
|
||||||
|
Simulation of Gas Flows" G.A. Bird, 1994) is available; other run-time
|
||||||
|
selectable collision models can be easily added.
|
||||||
|
|
||||||
** Solver control improvements
|
*** Updated solvers
|
||||||
Use dictionary entries instead of an =Istream= for the solver controls.
|
+ =mdFoam= Molecular Dynamics (MD) solver able to simulate a mixture of an
|
||||||
+ This Allows dictionary substitutions and regular expressions in
|
arbitrary number of mono-atomic and small, rigid polyatomic (i.e. H2O, N2)
|
||||||
/system/fvSolution/.
|
molecular species, with 6 degree of freedom motion, in complex geometries. A
|
||||||
+ The old solver control syntax is still supported (warning emitted), but
|
molecule of any species can be built by specifying its sites of mass and
|
||||||
the *new* =foamUpgradeFvSolution= utility can be used to convert
|
charge. All molecules interact with short-range dispersion forces and
|
||||||
/system/fvSolution/ to the new format.
|
pairwise electrostatic interactions using methods described in: Fennell and
|
||||||
|
Gezelter, J. Chem. Phys. 124, 234104 (2006).
|
||||||
* Tutorial restructuring
|
+ =mdEquilibrationFoam= Similar to mdFoam, but employs velocity scaling to
|
||||||
to reflect solver application structure.
|
adjust the simulation temperature to a target value. Useful to equilibrate a
|
||||||
|
case before simulation.
|
||||||
* *New* Solvers
|
+ =chtMultiRegionFoam= New boundary condition allows independent decomposition
|
||||||
+ =buoyantBoussinesqSimpleFoam= Steady state heat transfer solver using a
|
of coupled regions without any constraint on the decomposition.
|
||||||
Boussinesq approximation for buoyancy, with laminar, RAS or LES turbulence
|
|
||||||
modelling.
|
|
||||||
+ =buoyantBoussinesqPisoFoam= Transient heat transfer solver using a
|
|
||||||
Boussinesq approximation for buoyancy, with laminar, RAS or LES turbulence
|
|
||||||
modelling.
|
|
||||||
+ =coalChemistryFoam= Transient, reacting lagrangian solver, employing a coal
|
|
||||||
cloud and a thermo cloud, with chemistry, and laminar, RAS or LES turbulence
|
|
||||||
modelling.
|
|
||||||
+ =porousExplicitSourceReactingParcelFoam= Transient, reacting lagrangian
|
|
||||||
solver, employing a single phase reacting cloud, with porous media, explicit
|
|
||||||
mass sources, and laminar, RAS or LES turbulence modelling.
|
|
||||||
+ =rhoReactingFoam= Density-based thermodynamics variant of the reactingFoam
|
|
||||||
solver, i.e. now applicable to liquid systems.
|
|
||||||
+ =dsmcFoam= DSMC (Direct Simulation Monte-Carlo) solver for rarefied gas
|
|
||||||
dynamics simulations, able to simulate mixtures of an arbitrary number of
|
|
||||||
gas species. The variable hard sphere collision model with Larsen-Borgnakke
|
|
||||||
internal energy redistribution (see "Molecular Gas Dynamics and the Direct
|
|
||||||
Simulation of Gas Flows" G.A. Bird, 1994) is available; other run-time
|
|
||||||
selectable collision models can be easily added.
|
|
||||||
|
|
||||||
* Updated solvers
|
|
||||||
+ =mdFoam= Molecular Dynamics (MD) solver able to simulate a mixture of an
|
|
||||||
arbitrary number of mono-atomic and small, rigid polyatomic (i.e. H2O, N2)
|
|
||||||
molecular species, with 6 degree of freedom motion, in complex geometries. A
|
|
||||||
molecule of any species can be built by specifying its sites of mass and
|
|
||||||
charge. All molecules interact with short-range dispersion forces and
|
|
||||||
pairwise electrostatic interactions using methods described in: Fennell and
|
|
||||||
Gezelter, J. Chem. Phys. 124, 234104 (2006).
|
|
||||||
+ =mdEquilibrationFoam= Similar to mdFoam, but employs velocity scaling to
|
|
||||||
adjust the simulation temperature to a target value. Useful to equilibrate a
|
|
||||||
case before simulation.
|
|
||||||
+ =chtMultiRegionFoam= New boundary condition allows independent decomposition
|
|
||||||
of coupled regions without any constraint on the decomposition.
|
|
||||||
|
|
||||||
* Post-processing
|
|
||||||
+ Sampling on iso-surfaces, interpolated or non-interpolated.
|
|
||||||
+ Sampling on surface defined by distance to surface (=distanceSurface=).
|
|
||||||
+ Cutting planes for arbitrary meshes.
|
|
||||||
+ Output to any surface geometry format supported by the =surfMesh= library.
|
|
||||||
|
|
||||||
*** Function objects
|
|
||||||
|
|
||||||
***** Improvements for function objects and time-looping
|
|
||||||
+ The =functionObjectList= retains the order of the =functionObject=
|
|
||||||
order, which allows a chaining of operations. It is thus internally more
|
|
||||||
efficient when /system/controlDict/ uses =functions {..}= instead of
|
|
||||||
=functions (..)=, but both forms are supported.
|
|
||||||
+ The =functionObject= now has an additional =end()= method that is called
|
|
||||||
when =Time::loop()= or =Time::run()= determine that the time-loop exits.
|
|
||||||
Accordingly, one of these two idioms should be used in solver code:
|
|
||||||
1. =while (runTime.loop() { ... }=,
|
|
||||||
2. =while (runTime.run()) { runTime++; ... }=.
|
|
||||||
+ *New* =functionObjectList= now tracks the SHA1 message digest of the
|
|
||||||
sub-directories. This avoids reloading a =functionObject= when
|
|
||||||
something unrelated in /system/controlDict/ changed.
|
|
||||||
|
|
||||||
***** *New* function objects:
|
|
||||||
+ =systemCall= - executes a list of system instructions.
|
|
||||||
+ =fieldMinMax= - computes the min/max of a <field>.
|
|
||||||
+ =staticPressure= - converts kinematic pressure to static pressure.
|
|
||||||
+ =dsmcFields= - calculates intensive fields (velocity and temperature)
|
|
||||||
from averaged extensive fields (i.e. momentum and energy).
|
|
||||||
|
|
||||||
***** Usage
|
|
||||||
+ Improved output control: =timeStep= or =outputTime=.
|
|
||||||
|
|
||||||
* Boundary conditions
|
* Boundary conditions
|
||||||
+ Improved set of direct mapped boundary conditions.
|
+ Improved set of direct mapped boundary conditions.
|
||||||
@ -356,6 +319,41 @@
|
|||||||
Only creates (and removes) /.OpenFOAM/ files if they didn't already
|
Only creates (and removes) /.OpenFOAM/ files if they didn't already
|
||||||
exist, which is useful in connection with the =-touch= option.
|
exist, which is useful in connection with the =-touch= option.
|
||||||
|
|
||||||
|
* Post-processing
|
||||||
|
+ Sampling on iso-surfaces, interpolated or non-interpolated.
|
||||||
|
+ Sampling on surface defined by distance to surface (=distanceSurface=).
|
||||||
|
+ Cutting planes for arbitrary meshes.
|
||||||
|
+ Output to any surface geometry format supported by the =surfMesh= library.
|
||||||
|
|
||||||
|
*** Function objects
|
||||||
|
|
||||||
|
***** Improvements for function objects and time-looping
|
||||||
|
+ The =functionObjectList= retains the order of the =functionObject=
|
||||||
|
order, which allows a chaining of operations. It is thus internally more
|
||||||
|
efficient when /system/controlDict/ uses =functions {..}= instead of
|
||||||
|
=functions (..)=, but both forms are supported.
|
||||||
|
+ The =functionObject= now has an additional =end()= method that is called
|
||||||
|
when =Time::loop()= or =Time::run()= determine that the time-loop exits.
|
||||||
|
Accordingly, one of these two idioms should be used in solver code:
|
||||||
|
1. =while (runTime.loop() { ... }=,
|
||||||
|
2. =while (runTime.run()) { runTime++; ... }=.
|
||||||
|
+ *New* =functionObjectList= now tracks the SHA1 message digest of the
|
||||||
|
sub-directories. This avoids reloading a =functionObject= when
|
||||||
|
something unrelated in /system/controlDict/ changed.
|
||||||
|
|
||||||
|
***** *New* function objects:
|
||||||
|
+ =systemCall= - executes a list of system instructions.
|
||||||
|
+ =fieldMinMax= - computes the min/max of a <field>.
|
||||||
|
+ =staticPressure= - converts kinematic pressure to static pressure.
|
||||||
|
+ =dsmcFields= - calculates intensive fields (velocity and temperature)
|
||||||
|
from averaged extensive fields (i.e. momentum and energy).
|
||||||
|
|
||||||
|
***** Usage
|
||||||
|
+ Improved output control: =timeStep= or =outputTime=.
|
||||||
|
|
||||||
|
* Tutorial restructuring
|
||||||
|
to reflect solver application structure.
|
||||||
|
|
||||||
* Third-party Software
|
* Third-party Software
|
||||||
+ =gcc= upgraded to version 4.3.3.
|
+ =gcc= upgraded to version 4.3.3.
|
||||||
+ =OpenMPI= upgraded to version 1.3.3.
|
+ =OpenMPI= upgraded to version 1.3.3.
|
||||||
|
|||||||
Reference in New Issue
Block a user