This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
oscae:software:openfoam [2022/03/25 18:15] hazmilazis ↷ Page moved from public:software:openfoam to oscae:software:openfoam |
oscae:software:openfoam [2022/10/11 08:59] (current) hazmilazis [Books] |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | [[|<--]] | Up: [[public: | + | [[|<--]] | Up: [[oscae: |
Line 8: | Line 8: | ||
- | ===== Overview ====== | + | [[oscae: |
- | + | | Overview | |
- | * OpenFOAM stands for Open Source Field Operation and Manipulation. | + | |
- | * OpenFOAM is mainly a C++ library used to solve partial differential equations (PDEs), and ordinary differential equations (ODEs). | + | |
- | * OpenFOAM is under active development. It is originally developed by Henry Weller and Hvorje Jasak in Imperial College London and released as open source code in 2004. | + | |
- | * At the moment, the development of OpenFOAM have been forked into three main development(( | + | |
- | More details | + | |
- | * openfoam.com (OpenCFD Ltd, ESI Group) | + | |
- | * openfoam.org (The OpenFOAM Foundation Ltd - Henry Weller) | + | |
- | * foam-extend (Wikki Ltd - Prof Hvorje Jasak) | + | |
- | * OpenFOAM are packaged with ready-to-use solvers, pre-processing utilities, and post-processing utilities. | + | |
- | * OpenFOAM is licensed under the GNU General Public License (GPL). Therefore, it can be freely distributed with the source code, and run on massively parallel computers. | + | |
- | * Industries, academia and research labs makes up the large community of OpenFOAM users and contributors. | + | |
- | + | ||
- | + | ||
- | ==== Features ====== | + | |
- | + | ||
- | Fluid Dynamics/ | + | |
- | * Turbulence modelling: (Reynolds-Averaged Simulation (RAS), Large-Eddy Simulation (LES) and Detached-Eddy Simulation (DES, DDES, etc). | + | |
- | * Thermophysical modelling | + | |
- | * Transport/ | + | |
- | * Multiphase flows | + | |
- | * Rotating flows with multiple reference frames (MRF) | + | |
- | * Rotating flows with arbitrary mesh interface (AMI) | + | |
- | * Dynamic meshes | + | |
- | * Compressible/ | + | |
- | * Conjugate heat transfer | + | |
- | * Porous media | + | |
- | * Lagrangian particle tracking | + | |
- | * Reaction kinetics / chemistry | + | |
- | + | ||
- | + | ||
- | ==== OpenFOAM in General CFD Workflow ====== | + | |
- | + | ||
- | {{ : | + | |
- | + | ||
- | + | ||
- | ==== Architecture and Numerics ====== | + | |
- | + | ||
- | * Discretisation based on Finite Volume Method (FVM), with collocated polyhedral unstructured meshes. | + | |
- | * Second order accuracy in space and time. Various discretization schemes are available. | + | |
- | * Steady and transient solvers are available. | + | |
- | * Pressure-velocity coupling via segregated methods (SIMPLE and PISO). Coupled solvers are under active development. | + | |
- | * Massive parallelism through domain decomposition. | + | |
- | * All components are implemented in library structure to facilitate the development | + | |
- | + | ||
- | + | ||
- | ==== OpenFOAM | + | |
- | + | ||
- | Most capabilities offered by commercial CFD applications are available in OpenFOAM. However, the main differences are: | + | |
- | * There is no native GUI in official release. | + | |
- | * The users have to execute each solvers and pre- and post-processing utilities via command line interface (CLI), particularly Linux bash shell. | + | |
- | * The users have to directly edit case configurations in human-readable plain text format. | + | |
- | * While being tedious and prone to errors, these allow: | + | |
- | * automation of large number of runs using user-defined shell scripts. | + | |
- | * development of 3rd party GUI and workflows tailored for a specific application. | + | |
- | * Official documentation may not be complete, but useful resources are available from various online sources contributed by users/ | + | |
- | * Complete source code is accessible, allowing customisation of a solver for a specific need. Therefore OpenFOAM is suitable to be used for research and development. | + | |
- | * Most importantly, | + | |
- | + | ||
- | + | ||
- | ==== GUI for OpenFOAM ====== | + | |
- | + | ||
- | * No official GUI | + | |
- | * But many 3rd party GUI available, | + | |
- | * [[https:// | + | |
- | * [[https:// | + | |
- | * Web application suite at [[https:// | + | |
- | * See more at [[https:// | + | |
- | * It is possible to develop own GUI tailored for a problem of interest, e.g a simple GUI can be quickly written in Python with [[ https:// | + | |
- | + | ||
- | + | ||
- | ===== Learn ====== | + | |
- | + | ||
- | * Serious use of OpenFOAM can be a good reason to be exposed with linux-based OS and its CLI shell scripting for those uninitiated | + | |
- | * It is always recommended to follow official tutorials that will run through simple cases and demonstrate how OpenFOAM utilities can help including useful tips, e.g., [[https:// | + | |
- | * More up-to-date and detailed description can be found in official user-guide, e.g., [[ https:// | + | |
- | * There are also good learning materials from the community | + | |
- | * [[ https:// | + | |
- | * [[ https:// | + | |
- | * [[ http:// | + | |
- | * While they offer paid training, most of their training slides and case files are available for free. Their [[ https:// | + | |
- | * Other good resources can be found scattered in the internet. Users have to be careful in judging whether the materials are up-to-date or compatible with their version at hand, and to see if appropriate changes are required | + | |
- | * Ultimately, understanding the actual code is the only way to know the exact implementation and behaviour of the software. However, this is usually not required unless for a niche and advanced applications and for precise solution control. | + | |
==== Tutorials ====== | ==== Tutorials ====== | ||
- | [[public: | + | [[oscae: |
- | [[public: | + | [[oscae: |
Bahram Haddadi, Christian Jordan, and Michael Harasek, eds. OpenFOAM® Basic Training | TU Wien. 5th ed. chemical-engineering.at, | Bahram Haddadi, Christian Jordan, and Michael Harasek, eds. OpenFOAM® Basic Training | TU Wien. 5th ed. chemical-engineering.at, | ||
Line 104: | Line 22: | ||
==== Books ====== | ==== Books ====== | ||
- | [[public: | + | [[oscae: |
- | [[public: | + | [[oscae: |
+ | [[https:// | ||
==== Courses ====== | ==== Courses ====== | ||
Line 145: | Line 64: | ||
=== Displacement hull ====== | === Displacement hull ====== | ||
- | [[public: | + | [[oscae: |
- | [[public: | + | [[oscae: |
- | [[public: | + | [[oscae: |
=== Planing hull ====== | === Planing hull ====== | ||
- | [[public: | + | [[oscae: |
==== Turbulent flow over airfoil ====== | ==== Turbulent flow over airfoil ====== | ||
- | [[public: | + | [[oscae: |