Better bounding on topo change
[foam-extend-3.2.git] / ReleaseNotes.txt
blob4695dede8e9780645bd5178e6b169cfd89ac7d66
1                  *Release notes for foam-extend-3.1*
2                  ===================================
4 Date: 8 June 2014
7 ################################################################################
9 Table of Contents
10 =================
11 1 Overview
12 2 Installation
13 3 Compatibility
14 4 Main differentiators between foam-extend and OpenFOAM
15 5 New features in foam-extend-3.1, since foam-extend-3.0
16 6 Recent successful compilations and tests
17 7 Reporting bugs
18 8 How to contribute
19 9 List of Contributors:
22 1 Overview
23 -----------
24   The foam-extend project is a fork of the OpenFOAM® open source
25   library for Computational Fluid Dynamics (CFD). It is an open
26   project welcoming and integrating contributions from all users and
27   developers. Previously known as OpenFOAM®-dev and OpenFOAM®-extend,
28   it contains bug fixes and performance improvements, as well as
29   extensions and additional features provided by community
30   contributors (see file ListOfContributors), such as dynamic mesh and
31   topological change support, turbomachinery extensions including
32   general grid interpolation (GGI), cyclic GGI and mixing plane,
33   block-coupled matrix support, implicitly coupled conjugate heat
34   transfer and other pyshics coupling, finite area method,
35   comprehensive dynamic mesh (motion and topological changes)
36   capability and GPU support. For a full list, see below and previous
37   release notes at:
38   [http://sourceforge.net/p/openfoam-extend/wiki/Home/]
40   Version 3.1, nicknamed "Zagreb", is the current version of
41   foam-extend. The release continues the tradition and spirit of the
42   original FOAM code developed by prof. Jasak and Mr. Weller during
43   their time at Imperial College and released as the general purpose
44   CFD/CCM package by Nabla Ltd. in 2000. In this spirit, we reverted
45   18 December 2013 to the original numbering scheme (foam-2.3.2, 13
46   December 2004) as release number 3.0.  Visit [http://foam-extend.org]
47   for more information.
49   OPENFOAM® is a registered trademark of ESI Group. OpenFOAM-extend and
50   foam-extend are a community effort not endorsed by ESI Group.
53 2 Installation
54 ---------------
55    foam-extend-3.1 can be compiled and runs on any linux system
57   * Main supported OSs:
58     - Ubuntu 14.04
59     - Fedora 20
60     - Mac OS X
62   * Compile from source:
64     Please refer to doc/buildInstructions/ for details. Further
65     installation instruction are available on the unofficial OpenFOAM
66     Wiki:
67     [http://openfoamwiki.net/index.php/Installation/Linux/foam-extend-3.1]
68     If you have improvements or build instructions for a new system,
69     please share them with the community (see section "How to
70     contribute", below).
72   * Download binary packages:
74     Binary packages are available for download at
75     [http://sourceforge.net/projects/openfoam-extend/] for the following
76     systems: Ubuntu 14.04, Fedora 20 and Mac OS X.
78   * Accompanying ThirdParty software:
79     - gcc compatibility up to 4.8.2
80     - Paraview 4.0.1
81     - qt 4.8.5
82     - openmpi 1.6.5
83     - cmake 2.8.12
84     - metis 5.1.0
85     - parmetis 4.0.3
86     - scotch 6.0.0
87     - ParMGridGen 1.0
88     - mesquite 2.1.2
89     - PyFoam 0.6.3
90     - swak4Foam 0.3.1
91     - zoltan 3.6
92     - bison 2.7
93     - hwloc 1.7.2
94     - libccmio 2.6.1
97 3 Compatibility
98 ----------------
99   Upstream features from the OpenFOAM® code base are merged into
100   foam-extend on regular basis. The interface format of
101   foam-extend-3.1 is largely compatible to OpenFOAM-1.6-ext and
102   OpenFOAM-1.7.x. In some cases, the differences are caused by bug
103   fixes and algorithmic improvements, considered more important than
104   inter-operability.
106 4 Main differentiators between foam-extend and OpenFOAM
107 --------------------------------------------------------
108   A large number of features have been lost within the release of
109   OpenFOAM since version 1.3, the code base has shrunk by more than
110   40%.  While we understand the lack of technical ability of
111   supporting advanced CFD features, we feel that existing features and
112   specifically large-scale contributions should remain active and
113   developed further. Below is a list of main features of foam-extend
114   which are lacking, lost, deactivated or unusable in ESI releases:
116   * Turbomachinery features, including General Grid Interface (GGI),
117     partial overlap GGI, cyclic GGI, with improvements in parallel
118     scaling.  First release of a mixing plane stage interface
120   * Dynamic mesh with topological changes Sliding interfaces, mesh
121     layering, attach-detach boundaries etc.  In foam-extend, full
122     parallel support for topological changes is released for the first
123     time
125   * Finite Element Method with support for polyhedral meshes This is
126     mainly used in mesh deformation and over the last 15 years it has
127     proven vastly superior to all other dynamic mesh methods.
129   * Advanced mesh deformation technology Including tet FEM mesh
130     deformation, Radial Basis Function (RBF) mesh deformation,
131     tetrahedral remeshing dynamic mesh support and solid body motion
132     functions.  All of the above include parallelisation support
134   * Library of dynamic meshes with topological changes with full
135     second order FVM discretisation support on moving meshes with
136     topological changes
138   * Internal combustion engine-specific dynamic mesh classes such as
139     two-stroke engine and various forms of 4-stroke and multi-valve
140     dynamic mesh classes
142   * Finite Area Method providing support for FVM-like discretisation
143     on a curved surface in 3-D, with examples of liquid film modelling
145   * Block-coupled matrix support, allowing fully implicit
146     multi-equation solution of NxN equation sets, with full
147     parallelisation support.  First release of a block-AMG linear
148     equation solver
150   * Fully implicit conjugate-coupled solution framework, allowing
151     implicit solution fo multiple equations over multiple meshes, with
152     parallelism
154   * Proper Orthogonal Decomposition data analysis tools, with
155     applications to FOAM field classes
157   * Equation reader classes and tutorials
159   * Multi-solver solution framework, allowing multiple field models to
160     be solved in a coupled manner
162   * A major contribution is solid mechanics modelling, including
163     linear and non-linear materials, contact, self-contact and
164     friction, with updated Lagrangian or absolute Lagrangian
165     formulation.  Solution of damage models and crack propagation in
166     complex materials via topological changes
168   * CUDA solver release, provided in full source and as an example of
169     coupling external linear equation solvers with FOAM
171   * Library-level support for Immersed Boundary Method and Overset
172     Mesh
174   * Major improvements in accuracy and stability of FVM discretisation
175     with options on convection and diffusion discretisation, deferred
176     correction or explicit schemes
178   * Algebraic multigrid solver framework
180   * 210 tutorials with automated run scripts
182   * Automatic test harness
184   * Approximately 6000 bug fixes in fundamental level libraries and
185     discretisation techniques
187 5 New features in foam-extend-3.1, since foam-extend-3.0
188 ---------------------------------------------------------
189   The list of features is a result of the work of numerous
190   contributors. The maintainers of foam-extend would formally like to
191   thank them all.
193   Get a full log of the updates by (either):
196   user@machine> git log 3.0.. > commitLog
200   user@machine> git log 3.0.. --oneline > commitLog
204   user@machine> gitg 3.0..
207   * Major new features:
208     - Pressure-based compressible turbo functionalities
209     - Pressure-based coupled solver (block-coupling p and U)
210     - Density-based coupled Roe flux solver dbnsFoam and dbnsTurbFoam
211     - Major update and validation of mixing plane boundary
212     - Full deploymenr of block matrix, including block-AMG solverse
213     - Further parallel dynamic mesh capability: all topological changes
214       supported in parallel execution
215     - Major upgrade of solid mechanics solvers
216     - Support for CLang-based compilers
218   * Licence: GPLv3
220   * Installation:
221     - Updated and bug-fixed installation procedures
222     - Removed need for gmake link in Ubuntu
223     - Scripts for minimizing installation after compilation
224       - ThirdParty/Allclean alsoPackage - new option
225       - wcleanAllButLibBinLnInclude
226     - Fixed problem with ParaView reader for Ubuntu 14.04
227     - foamToTecplot360: building tecio doesn't require X.org
228       development files
230   * Solvers:
231     - compressible/dbnsFoam
232     - compressible/dbnsTurbFoam
233     - compressible/steadyCompressibleFoam
234     - compressible/steadyCompressibleMRFFoam
235     - compressible/steadyCompressibleSRFFoam
236     - coupled/pUCoupledFoam (incl. core library changes)
238     - Update and cleanup of solvers/solidMechanics
239     - Update for segregated FEM matrix,
240       solvers/solidMechanics/stressFemFoam
242   * Utilities:
243     - convertPhi (for steadyCompressible solvers)
244     - foamMeshToElmer, fluent3DMeshToElmer
245     - transformPoints -cylToCart "origin axis direction" - new option
246     - blockMesh syntax update (see commit a78b12074)
248   * Libraries:
249     - General:
250       - Added Gauss-Seidel as asymmetric solver
251       - Block matrix agglomeration (for pUCoupledFoam)
252       - Block AMG solver
253       - dbns library (src/dbns)
254     - Boundary conditions:
255       - cfdTools/general/SRF/derivedFvPatchFields/SRFFlowRateInletVelocity
256       - cfdTools/general/SRF/derivedFvPatchFields/SRFSurfaceNormalVelocity
257       - cfdTools/general/SRF/derivedFvPatchFields/SRFTotalPressure
258       - cfdTools/general/SRF/derivedFvPatchFields/SRFTotalTemperature
259       - cfdTools/general/SRF/derivedFvPatchFields/pulseFixedValue
260       - cfdTools/general/SRF/derivedFvPatchFields/waveTransmissiveInlet
261       - thermophysicalModels/basic/derivedFvPatchFields/isentropicTotalTemperature
262       - thermophysicalModels/basic/derivedFvPatchFields/temperatureDirectedInletOutletVelocity
263       - fvMesh/fvPatches/constraint/mixingPlane
264     - Turbulence modeling:
265       - Removed kOmegaSST_lowRe - use standard kOmegaSST
267   * Tutorial updates (settings, initial conditions, bug fixes etc.):
268     - incompressible/icoDyMFoam/mixerGgi
269     - incompressible/icoDyMFoam/movingConeMotion
270     - incompressible/icoDyMFoam/movingConeTopo
271     - solidMechanics/elasticNonLinTLSolidFoam/largeStrainCantileverBeam
272     - solidMechanics/elasticNonLinTLSolidFoam/nonLinBlock
273     - solidMechanics/elasticNonLinTLSolidFoam/rotateSphereTL
274     - solidMechanics/elasticThermalSolidFoam/hotCylinder
275     - solidMechanics/stressFemFoam/plateHole
276     - Many other updates due to blockMesh syntax update
278   * New tutorials:
279     - compressible/dbnsFoam/forwardStep
280     - compressible/dbnsFoam/shockTube
281     - compressible/dbnsTurbFoam/naca0012
282     - compressible/steadyCompressibleFoam/2bump
283     - compressible/steadyCompressibleFoam/bumpBlockMesh
284     - compressible/steadyCompressibleFoam/bumpFine05
285     - compressible/steadyCompressibleMRFFoam/bentRotorStator
286     - compressible/steadyCompressibleMRFFoam/simpleRotorStator
287     - compressible/steadyCompressibleSRFFoam/bentBlade
288     - compressible/steadyCompressibleSRFFoam/simpleBlade
289     - coupled/pUCoupledFoam/cavity
290     - incompressible/MRFSimpleFoam/axialTurbine_ggi
291     - incompressible/MRFSimpleFoam/axialTurbine_mixingPlane
292     - incompressible/pimpleDyMFoam/axialTurbine
293     - incompressible/pimpleDyMFoam/movingCylinders
294     - incompressible/pUCoupledFoam/backwardFacingStepLaminar
295     - incompressible/pUCoupledFoam/backwardFacingStepTurbulent
296     - incompressible/pUCoupledFoam/cavity
297     - incompressible/simpleSRFFoam/axialTurbine
298     - mesh/moveDynamicMesh/movingCylinders
300   * Bug fixes:
301     - Correct snGrad on coupled boundaries
302     - Handling of static null pointers: safe to dereference
303     - LinearUpwind no longer hangs in parallel execution on empty patches
304     - Mesh update on parallel topo changes: zones before boundaries
305     - GGI interpolation updates on topologically changing meshes
306     - Cell layering issues off complex surfaces
307     - Template depth for block matrix support
308     - Parallel efficiency improvements
310 6 Recent successful compilations and tests
311 -------------------------------------------
312    * Ubuntu 14.04:
314      [http://openfoam-extend.sourceforge.net/CDash/viewTest.php?buildid=736]
316    * Ubuntu 12.04:
318      [http://openfoam-extend.sourceforge.net/CDash/viewTest.php?buildid=738]
320    * CentOS 6.4:
322      [http://openfoam-extend.sourceforge.net/CDash/viewTest.php?buildid=734]
324    * Mac OX X 10.9.3 Maverick & CLang (XCode compiler):
326      [http://openfoam-extend.sourceforge.net/CDash/viewTest.php?buildid=733]
328    * Mac OX X & gcc (Macports)
330      [http://openfoam-extend.sourceforge.net/CDash/viewTest.php?buildid=737]
332   * Linux PPC ppc64 (Blue Gene)
334     [http://openfoam-extend.sourceforge.net/CDash/viewTest.php?buildid=742]
336   * Red Hat Enterprise Linux Server release 5.2 (Tikanga), Intel CC 11.1
338     [http://openfoam-extend.sourceforge.net/CDash/viewTest.php?buildid=743]
340 7 Reporting bugs
341 -----------------
342     To report bugs, please use the MantisBT bugtracker at
343     [http://sourceforge.net/apps/mantisbt/openfoam-extend]
345 8 How to contribute
346 --------------------
347     All your contributions are highly welcome: New solvers, utilities and
348     models; bug fixes; documentation. The many ways of contributing and the
349     contribution process are described in detail at:
350     [http://sourceforge.net/p/openfoam-extend/wiki/HowToContribute/]
352 9 List of Contributors:
353 ------------------------
354     See file ListOfContributors