Merge branch 'bugfix/partialOveralpGGI'
[foam-extend-4.0.git] / ReleaseNotes.txt
blobd736dcaa74ad0ab955955a9e68647d76904f5c91
1                  _____________________________________
3                   *RELEASE NOTES FOR FOAM-EXTEND-4.0*
4                  _____________________________________
7                              December 2016
10 Table of Contents
11 _________________
13 1 Overview
14 2 Installation
15 3 Compatibility
16 4 Main differentiators between foam-extend and OpenFOAM
17 5 New features in foam-extend-4.0, since foam-extend-3.2
18 6 Recent successful compilations and tests
19 7 Reporting bugs
20 8 How to contribute
21 9 List of Contributors:
24 ###############################################################################
27 1 Overview
28 ==========
30   The foam-extend project is a fork of the OpenFOAMĀ® open source library
31   for Computational Fluid Dynamics (CFD). It is an open project
32   welcoming and integrating contributions from all users and
33   developers. Previously known as OpenFOAM-dev and OpenFOAM-extend, it
34   contains bug fixes and performance improvements, as well as extensions
35   and additional features provided by community contributors (see file
36   ListOfContributors), such as dynamic mesh and topological change
37   support, turbomachinery extensions including general grid
38   interpolation (GGI), cyclic GGI and mixing plane, block-coupled matrix
39   support, implicitly coupled conjugate heat transfer and other physics
40   coupling, finite area method, comprehensive dynamic mesh (motion and
41   topological changes) capability and GPU support. For a full list, see
42   below and previous release notes at:
43   [http://sourceforge.net/p/foam-extend/wiki/Home/]
45   Version 4.0, nicknamed "Guimaraes", is the current version of
46   foam-extend. The release continues the tradition and spirit of the
47   original FOAM code developed by prof. Jasak and Mr. Weller during
48   their time at Imperial College and released as the general purpose
49   CFD/CCM package by Nabla Ltd. in 2000. In this spirit, we reverted 18
50   December 2013 to the original numbering scheme (foam-2.3.2, 13
51   December 2004) as release number 3.0.  Visit [http://foam-extend.org]
52   for more information.
54   OPENFOAM is a registered trademark of ESI Group. OpenFOAM-extend and
55   foam-extend are a community effort not endorsed by ESI Group.
58 2 Installation
59 ==============
61   foam-extend-4.0 can be compiled and runs on a large variety of Linux,
62   Mac or Windows systems
64   * Main supported OSs:
65     - Ubuntu 16.04 LTS
66     - Ubuntu 14.04 LTS
67     - Fedora 24
68     - Mac OS X
69     - Microsoft Windows 7, 8.1 and 10
71   * Compile from source:
73     Please refer to doc/buildInstructions/ for details. Further
74     installation instruction are available on the unofficial OpenFOAM
75     Wiki:
76     [http://openfoamwiki.net/index.php/Installation/Linux/foam-extend-4.0]
77     If you have improvements or build instructions for a new system,
78     please share them with the community (see section "How to
79     contribute", below).
81   * Download binary packages:
83     Binary packages are available for download at
84     [http://sourceforge.net/projects/foam-extend/] for the following
85     systems: Ubuntu 16.04, Fedora 24 and Mac OS X and Windows 10.
87   * Accompanying ThirdParty software:
88     - gcc compatibility up to 4.9.2
89     - bison 2.7
90     - cmake 3.2.2
91     - flex-2.5.35
92     - hwloc 1.10.1
93     - libccmio 2.6.1
94     - mesquite 2.1.2
95     - metis 5.1.0
96     - openmpi 1.8.8
97     - Paraview 4.4.0
98     - parmetis 4.0.3
99     - ParMGridGen 1.0
100     - PyFoam 0.6.4
101     - qt 4.8.6
102     - scotch 6.0.4
103     - swak4Foam 0.4.0
106 3 Compatibility
107 ===============
109   Upstream features from the OpenFOAMĀ® code base are merged into
110   foam-extend on regular basis. The interface format of foam-extend-4.0
111   is largely compatible to foam-extend-3.2, to OpenFOAM-1.6-ext and
112   OpenFOAM-1.7.x. In some cases, the differences are caused by bug fixes
113   and algorithmic improvements, considered more important than
114   inter-operability.
117 4 Main differentiators between foam-extend and OpenFOAM
118 =======================================================
120   A large number of features have been lost within the release of
121   OpenFOAM since version 1.3, the code base has shrunk by more than 40%.
122   While we understand the lack of technical ability of supporting
123   advanced CFD features, we feel that existing features and specifically
124   large-scale contributions should remain active and developed
125   further. Below is a list of main features of foam-extend which are
126   lacking, lost, deactivated or unusable in ESI releases:
128   * Turbomachinery features, including General Grid Interface (GGI),
129     partial overlap GGI, cyclic GGI, with improvements in parallel
130     scaling.  First release of a mixing plane stage interface
132   * Dynamic mesh with topological changes Sliding interfaces, mesh
133     layering, attach-detach boundaries etc.  In foam-extend, full
134     parallel support for topological changes is released for the first
135     time
137   * Finite Element Method with support for polyhedral meshes This is
138     mainly used in mesh deformation and over the last 15 years it has
139     proven vastly superior to all other dynamic mesh methods.
141   * Advanced mesh deformation technology Including tet FEM mesh
142     deformation, Radial Basis Function (RBF) mesh deformation,
143     tetrahedral remeshing dynamic mesh support and solid body motion
144     functions.  All of the above include parallelisation support
146   * Library of dynamic meshes with topological changes with full second
147     order FVM discretisation support on moving meshes with topological
148     changes
150   * Internal combustion engine-specific dynamic mesh classes such as
151     two-stroke engine and various forms of 4-stroke and multi-valve
152     dynamic mesh classes
154   * Finite Area Method providing support for FVM-like discretisation on
155     a curved surface in 3-D, with examples of liquid film modeling
157   * Block-coupled matrix support, allowing fully implicit multi-equation
158     solution of NxN equation sets, with full parallelisation support.
159     First release of a block-AMG linear equation solver
161   * Fully implicit conjugate-coupled solution framework, allowing
162     implicit solution fo multiple equations over multiple meshes, with
163     parallelism
165   * Proper Orthogonal Decomposition data analysis tools, with
166     applications to FOAM field classes
168   * Equation reader classes and tutorials
170   * Multi-solver solution framework, allowing multiple field models to
171     be solved in a coupled manner
173   * A major contribution is solid mechanics modelling, including linear
174     and non-linear materials, contact, self-contact and friction, with
175     updated Lagrangian or absolute Lagrangian formulation.  Solution of
176     damage models and crack propagation in complex materials via
177     topological changes
179   * CUDA solver release, provided in full source and as an example of
180     coupling external linear equation solvers with FOAM
182   * Library-level support for Immersed Boundary Method and Overset Mesh
184   * Major improvements in accuracy and stability of FVM discretisation
185     with options on convection and diffusion discretisation, deferred
186     correction or explicit schemes
188   * Algebraic multigrid solver framework
190   * 253 tutorials with automated run scripts
192   * Automatic test harness
194   * Approximately 6000 bug fixes in fundamental level libraries and
195     discretisation techniques
198 5 New features in foam-extend-4.0, since foam-extend-3.2
199 ========================================================
201   The list of features is a result of the work of numerous
202   contributors. The maintainers of foam-extend would formally like to
203   thank them all.
205   Get a full log of the updates by (either):
206   ,----
207   | user@machine> git log 4.0.. > commitLog
208   `----
209   ,----
210   | user@machine> git log 4.0.. --oneline > commitLog
211   `----
212   ,----
213   | user@machine> gitg 4.0..
214   `----
216   * Major new features:
217     - Improved BlockLduMatrix and block-coupled p-U solver and
218       associated tools
219     - ILUCp and block ILUCp preconditioners
220     - Added MRF and porous media handling to the block-coupled solver
221     - Change of generic turbulence modelling interface: no U required
222     - Updated version of block-coupled turbulence models
223     - Major improvements in immersed boundary method library: improved
224       performance and parallel scaling.  Completed supporft for moving
225       deforming immersed boundary
226     - Adopted vanilla OpenFOAM solver control format (solutionControl
227       class)
228     - Implicit adjoint convection operator
229     - Improved GGI interpolation and cutting, with better parallel
230       scaling
231     - Global GGI search option for parallel cases
232     - GGI and mixing planes with jump condition for the rothalpy
233       equation
234     - Improved 6-DOF solver, with new handling of constraints
235     - Fully integrated real gas library
236     - Updated viscoelastoplastic models
237     - New steady-state universal flow solver, handling incompressible
238       and compressible flows within the same framework
239     - Time consistent incompressible solvers update
240     - Added decaying turbulence inlet boundary condition by Kornev
241     - New gradient limiter implementation
242     - Full gradient cacheing capability
243     - Removed fluxRequired from solution dictionaries
244     - Consistent notation of 1/aP
245     - Dynamic mesh improvements: prescribed motion functions
247   * Software
248     - New handling of lnInclude directories: avoid file copying on MS
249       Windows
250     - Changes to controlDict and options on MS Windows
251     - Consistency in formatting of compression options
252     - Raspberry Pi port
254   * Installation:
255     - Compilation improvements
256     - Updated packages versions and compilation in ThirdParty
257     - Changed compilation options for Infiniband: new versions of MPI
258     - Added support for mvapich2-2.2
259     - Updated compilation for latest version of XCode for Mac OSX
260     - Updates for MS Windows build
262   * Solvers:
263     - Updated time consistent incompressible solvers (channelFoam,
264       icoFoam, nonNewtonianIcoFoam, pimpleDyMFoam, pimpleFoam,
265       simpleFoam, simpleSRFFoam)
266     - Steady universal (compressible and incompressible) flow solver
267       (steadyUniversalFoam)
268     - Block-coupled p-U solver improvements (MRFPorousFoam and
269       pUCoupledFoam)
270     - Improved steadyCompressibleMRFFoam
272   * New tutorials:
273     - Transient real fluid examples
274     - Universal steady-state MRF examples
275     - Additional coupled CHT example
276     - Additional immersed boundary example
277     - Additional steady-state MRF and GGI example
279   * Bug fixes: see git log for details
282 6 Recent successful compilations and tests
283 ==========================================
285   * Ubuntu 16.04 LTS
288 7 Reporting bugs
289 ================
291   To report bugs, please use the bugtracker at
292   [http://sourceforge.net/p/foam-extend/tickets/]
295 8 How to contribute
296 ===================
298   All your contributions are highly welcome: New solvers, utilities and
299   models; bug fixes; documentation. The many ways of contributing and
300   the contribution process are described in detail at:
301   [http://sourceforge.net/p/foam-extend/wiki/HowToContribute/]
304 9 List of Contributors:
305 =======================
307   See file ListOfContributors