Whats OpenFOAM ?
OpenFOAM is an open-source program that can solve differential equations, which using inbuilt
command libraries means you can solve many engineering and scientific problems involving
fluid flows, heat exchange and even chemical reactions.
Its usually run in Linux (although with some trickery is possible in Windows), and is
command line only. So basically if you are old enough to remember running PCs from
the DOS prompt you will have some understanding of the functionality.
This kind of program is also known as a “multi-physics solver”, because its able to
combine different kinds of physical behaviour in the same simulation. For example
heat transfer and fluid flow at once.
Why would anyone use it ?
Its becoming almost the defacto solver in Universities and research institutions, for
the following reasons:
1) Its free (no licence fees !)
2) Its opensource, so you can make your own solver (if you know c++ and have a
bit of background in physics) if you are prepared to do some work – you can do
basically anything with it.
3) It comes with parallel processing without extra fees. Commercial packages
require not only a “seat” license fee – but also a premium for each addditional
computation node you want to use….so if you have a huge CPU cluster the money
saving might be dramatic.
Its use is also growing in industry, in limited fashion. Some companies have
started up, offering graphical interfaces for OpenFOAM and also developing
OpenFOAM to perform certain specialist fuctions very well and offering their
services for CFD (Computational Fluid Dynamics)for example airflow around
a car or aeroplane.
So if its free, why does anyone pay for CFD and FEA software ?
OpenFOAM, comes with alot of documentation. However, its a bit like getting
a new car from the showroom and being given no usermanual…but a whole
pile of blueprints and circuit diagrams. Technically all the information is
in there…but unless you have a technical background and ALOT of time
to study the material, you will find it very difficult to use OpenFOAM at first.
Secondly its flexibility is also a negative, its not set up as standard to do any
particular thing specifically. So you need to “build” each model setup
(called a “case”) manually yourself. If you do lots of very different projects
on a day to day basis, you will not find this efficient.
So most companies will still find it cheaper to pay large licence fees, than
to employ someone just to set up their simulations and spend months coding and programming.
For people doing generally very consistent type studies, it may be worthwhile to consider it.
Where do I get it ?
You can download it from http://www.openfoam.org/download/
How do I get started using it ?
Best starter are these three introduction videos which cover the installation, the
file structure for a simple example, and the boundary conditions:
There are many pre-prepared “cases”, in the installation. You can just find
one thats similar to the problem you want to solve, open it, run it, see what it
does then set about modifying it to do what you need. However this is far from simple !