CFD Online Discussion Forums

CFD Online Discussion Forums (
-   OpenFOAM (
-   -   Roadmap for new releases (

gschaider May 12, 2005 13:04

If I understood the recent rem
If I understood the recent remarks in the MessageBoard correctly, you guys are preparing a new release (I can't find it now, but I think one posting hinted that the changes will be big enough to make it a 1.2)

Would it be possible to say somewhere (in the message board or on the website) when this release will happen, what changes it will bring (and maybe even what the plans are afterward).

The reasons why I'm asking
a) I'm curious
b) it helps me planing and convincing my colleagues

I think everybody would understand if the release-date slips by some months or some things are not in the release.

henry May 12, 2005 18:04

I will release 1.2 as soon as
I will release 1.2 as soon as I can, it has reached the testing phase now but it will still takes some time. You must understand that all this work is done in my spare-time and the spare-time of others at OpenCFD because we have not yet found anyone prepared to contribute anything towards the cost of core development, porting, documentation, release etc. of OpenFOAM.

jkim May 12, 2005 20:44

Hello, First of all, I hope

First of all, I hope you get a fund for your continuous development of the Openfoam.

Here, I would like to say one thing.
You know that Kitware is developing a visualization tool known as VTK.
It is also a kind of open source programs. But the company sells many books which are just kinds of documentations describing the programs.
The Paraview also has very simplified free document. But Kitware sells the Paraview user book. Maybe it make money a little from selling the books. I know that it is not the main portion of its fund.

As the same way as Kitware does , you can make documents or books for the Openfoam,which describe the details of the Openfoam structure, how to modify its core, and a detail description about the classes such as how to use, what the member variables or arguments mean.

Then the persons who want to become users of the Openfoam, who want to modify the code and add their own models will buy and read them.

If you made the books, I would be the first consumer of them whatever they cost.

henry May 13, 2005 04:50

Writing books is a very large
Writing books is a very large investment in time and given that the number of CFD users worldwide is quite modest I doubt that the revenue from sales of books on OpenFOAM will even pay for the cost of writing let alone turn a profit. We simply do not have enough spare time to write books on OpenFOAM and will only do so if we can find investors willing to cover the cost.

gschaider May 17, 2005 10:14

Regarding Henry's first remark
Regarding Henry's first remark: I understand, that we don't have the right to demand a schedule from you. I just think that this could be a catalyst to enhance the "community participation": One part of that (I still call it that for the lack of a better word) roadmap could be "Stuff that is missing from OF, but we don't have the resources for" (One example I've seen in recent discussions would be the radiation model) Either someone, who needs these things, could come up with funding or someone, who already implemented similiar things in another context, would be tempted to apply his knowledge to OF. Or another thing would be "General stuff, where help would be nice": documentation/development of tutorial cases, helping with the docu (writing, proofreading) etc.

That could help people who don't want to be freeloaders to relieve their conscience by helping where it is really needed.

hjasak May 17, 2005 23:40

Hi Bernhard, I understand a
Hi Bernhard,

I understand and appreciate what you're trying to say, especially the call for "community participation". Let me try to give you a feel for the problem.

FOAM is a pretty complex piece of software and both Henry and myself are very particilar in the way things are done. This is true on many levels, from code indentation rules, comments, file organisation, class hierarchies, templating, efficiency, data handling, variable names, capitalisation rules etc. Have a look through various part of the code and I believe you'll see an amazing level of order and consistency :-)

At the same time, for a lot of people C++ is still complex and difficult to understand; on top of that, there are special ways that FOAM uses it. An example would be run-time selection tables, a crucial part of the design.

With this in mind, I hope you will appreciate that it takes a long time for people to successfully join in at the level where the code can be put "straight in" without major surgery/rewrite, which is the ultimate objective (for me). Also, in some situations, when people are not sufficiently careful or have a hacking attitude, it will never happen - exposing the poorly written code leads to lots of bugs and FOAM is complex enough even without it.

My advice for getting over the "freeloader guilt" would be:
1) chill :-)
2) play around with the code, try to follow the rules and make your own coding as "similar" to the rest of FOAM that you actually adopt the style as your own.
3) try and do some projects of your own, write little codes, write some papers, get projects publications etc.
4) spread the word - I really want this community to grow because that will make the code better (bigger?)
5) when you feel you've got something of general interest, give me a shout and we can talk about it.

As for people who are deeply involved with the development, my experience is that the easier way in is doing a big project and collaborating directly with experienced FOAM-ers. For me, the best experience so far was supervising PhD students, who get a lot of pleasure, experience and knowledge (CFD and C++ and programming + numerics in general) for their effort. However, this requires a LOT of time, both from the person doing the work and the supervisor and this limits the number of people. I am hoping that the newsgroup will prove to be a new and easier way of getting people on board.

Have fun,


henry May 18, 2005 04:43

I want to stress that Hrvoje J
I want to stress that Hrvoje Jasak does speak on behalf of me or anyone else at OpenCFD. I will write my own response about the release strategy from OpenCFD when I am ready to do so.

alberto May 18, 2005 20:06

Playing with the code is a goo
Playing with the code is a good idea. The code is clean and not so difficult to understand if you know C++. The doxygen documentation is also very useful.

The main problem, however, is the lack of a developer manual.
I don't mean a complete documentation of all features of OpenFOAM (doxygen is ok for that), but a sort of "Introduction to OpenFOAM programming".
Its purpose should be to reduce the time a beginner needs to start writing OpenFOAM code by giving to him the basis of conventions adopted in the code, explaining the main structure of a solver and how to set up a new solver to be used with FoamX.

While studying OpenFOAM I'm taking a good amount of notes. When they will be more complete I could reorder them and make them public (...they are hand-written now, and far from complete :-))


hjasak May 18, 2005 20:20

Hi Alberto, Is there any ho
Hi Alberto,

Is there any hope of convincing you to keep your notes in electronic form (at least text files don't require trees)? :-) Also, it saves the effort of typing them in at a later stage...

I totally agree with you view. At the moment any addition to introductory notes would be more than welcome + I am prepared to offer you a deal: if you make your notes electronic and agree to release them is some form, I offer to look at them and provide comments, suggestions, corrections and similar. For my taste, latex would be ideal (I can provide some macros to make your life easier), but if you don't like that, any non-Microsoft text format would also be OK.



alberto May 19, 2005 09:17

Hello Hrvoje, yes, it's possi
Hello Hrvoje,
yes, it's possible for me to keep my notes in electronic format. I have to translate the existing notes into English and to write them down, but it's not a problem.

I'm just ending some courses for my PhD, so in two weeks I should have enough time to start translating my notes.

I agree with the choice of LaTeX. Microsoft is not my world, I use Linux too ;-)
Any suggestion on the style and the structure are appreciated.


hjasak May 19, 2005 19:16

Heya, I would suggest using

I would suggest using TeX4ht. It is basically a latex environment but it can produce both the standard "paper/pdf" format and an html format with an Index and cross-links.

This has been used for the rest of the documentation and consistency would be nice. On the downside, it is a bit of a pain to install correctly and you need to use a bunch of macros (means reading the documentation) :-) I could probbaly provide a setup for it with some effort; alternatively, we can go for "plain vanilla" latex and then convert it into a more friendly format. Thinking of it, at the moment it seems more important to get more documentation written than what it will look like, so whatever is good for you is fine by me.

BTW, I would feel much less guilt if you could submit your Thesis before starting on this :-)

Thanks again,


alberto May 20, 2005 05:04

I'll look at Tex4ht documentat
I'll look at Tex4ht documentation before starting to write. It seems a good idea to write the notes directly in a versatile format.

I just discovered that SuSE Linux (my distro) has this package on the DVD, so it should not be too painful to install it.

Hehe, don't feel guilty Hrvoje :-). I started my PhD course on January, so my thesis will be submitted at the end of 2007.
Its subject is the CFD simulation of circulating fluidised bed reactors.
I used FLUENT during my thesis of degree, but it appeared not to be versatile enough for our purposes, expecially for some (many? ;-)) problems in adding trasport equations. That's the main reason we decided to switch to FOAM.


braennstroem May 20, 2005 07:37

Hi, maybe it would be very

maybe it would be very interesting which institutes/companies are using OpenFoam and especially for which tasks.

So a list with some information about the work would be nice, e.g. a list with:

- name of the institute/company
- work done with Foam/OpenFoam
- future/planed topics
- writing code for solver, models, ...
- wishes (solver, models, ...)
- reason for using OpenFoam

Then everybody would have an overview about the use of OpenFoam and the actuall process of writing
and/or changing models,solver,...

Beside these information some kind of wiki and an open area where everbody can send there code/models for testing (something like the AUR-Package side from archlinux; everybody can upload package-building-scripts) would be interesting too :-)


henry May 20, 2005 07:45

We could not possibly distribu
We could not possibly distribute on the web the kind of information about institutes and companies you are suggesting without their written permission, and that would be a lot of effort. The only real possibility is that the organisation who agree with your proposal volunteer the information to some kind of repository e.g. a wiki as you suggest.

We have investigated setting up a wiki but that is also a lot of effort both in the setup and maintenance apart from the hosting costs. We despartely need sponsorship for this and much of our other OpenFOAM-related activities at OpenCFD.

braennstroem May 20, 2005 08:44

Yes, I just meant volunteering
Yes, I just meant volunteering the information to a repository.

gschaider May 20, 2005 09:21

If you're interested: I could
If you're interested: I could set up a Wiki on our Webserver here.

It's at a university, so bandwidth is not a big problem (at least for the demands of a Wiki) and we've got to maintain the webserver anyway.

(And it would help me to get over the Freeloader-Guilt ;-) )

eugene May 20, 2005 10:19

I started playing around with
I started playing around with a Wiki for just this purpose a few months ago. It certainly has the potential to be a useful repository for OpenFOAM related stuff. The problem is of course (as Henry stated) the time and effort involved in setting it up and more importantly managing it.

Besides hosting the site, you will need someone to build the initial structures, set up submission guidelines, keep a modicum of order and enforce some quality control. That said, from my initial experience I doubt whether it would take an enormous effort, just more than I could afford right now.

Realise though that OpenFOAM is released under the GPL, so there is no reason you cant orginise such a site yourself.

chris May 20, 2005 11:46

I agree with Eugene. And a go
I agree with Eugene. And a good starting point for the Wiki would be to create an FAQ from the current content of this discussion site.

gschaider May 24, 2005 11:18

I have set up the basic struct
I have set up the basic structure for a Wiki at

At the moment this should only serve as a basis for discussions. (I'm still experiencing minor technical problems)

It contains the main features that were mentioned in the above discussion:
* a FAQ
* a place where people can describe how they use OpenFOAM (see Fabian's posting)
* a place where people can publish their utilities to the general public
* some additional categories, that I think could be useful

Unless there is someone who feels he is more qualified (and has the time) I would be willing to host this Wiki.

The next steps would be:
* iron out the technical problems
* restructure the wiki (depends on comments)
* write guidelines
* harvest the message board for candidates for the FAQ

hjasak May 24, 2005 11:30

Looks pretty nice. It would b
Looks pretty nice. It would be a great idea to upload the current contents of the User and Programmer's Gude into the Wiki - this would allow people to correct the errors (if any) :-) directly and just announce the fact + it would be a nice platform for adding one's own documentation as well.

The documentation is currently written in latex, ut hopefully there is a way to do this automatically...



gschaider May 24, 2005 12:20

Thanks :-) About the docume
Thanks :-)

About the documentation: I don't know how the documentation is currently maintained (I could tell, that it was not done with Word, because the formulas look good in it).

It's not that I'm unwilling to do this it's just that I think that there is a problem in principle: a document in LaTex assumes a linear structure. Web-Pages generated from a LaTeX-document will therefor always have a tree-like structure (if we don't look at cross-references). The Wiki on the other hand assumes no structure whatsoever. Everything can be linked with everything. It's no problem to map the structure of a LaTeX-document to a Wiki, but the other way round could be difficult (needs hand-editing and/or great disciplin from the people involved). What I'm trying to say is: I think the quality of the printed documentation would suffer.

But I'll loook into that matter.

Until then my idea (as materialized in the Wiki :-) ) was to have a parallel structure in the form of the Addenda where people add their contributions to the documentation. An editor-person can then harvest this via copy-and-paste into the definitve documentation.

henry May 24, 2005 12:25

I agree with your reservations
I agree with your reservations about using the Wiki as a method for developing the documentation directly and your proposal in the last paragraph which fits with our (OpenCFD's) plans for the development of the formal documentation.

gschaider May 24, 2005 19:19

Please excuse me, if I am gett
Please excuse me, if I am getting too philosophical here. It's late.

I think there is a distinction between information and knowledge. To me information is the collection of bits of information (sorry didn't find a better word) that may be ordered in some way. Knowledge is when one can see these informations as a whole. When someone has knowledge he can tell it to others in one narrative.

To me a Wiki is about information. A manual (if it's not just written because of contractual obligations) is about knowledge.

That said, I'd like to say, that I liked the two OpenFOAM manuals very much (my main reservation is that the "Programmer's Guide" was a bit misleading; but that has been said elsewhere by more qualified people in this message board). I wouldn't say, that I read every page of them, but someone thought about a structure and if I skipped a part I could tell what I skipped (because of the narrative).
With hypertext (==Wiki) there's always the problem that you're not always sure if the parts you didn't click on were important (to you).

The purpose of a Wiki can therefor only be to acquire information from as many sources as possible.
Knowledge can only be gathered by two ways (please don't take the the political classifications by face value):
a) looking at all the information an deducing the knowledge by yourself (the anarchistic way)
b) let someone write a book of knowledge, read it and believe parts of it (the facistist/stalinist way)

I think that most of us (academically trained people) went from b) to a). ( a. only is possible, but very time consuming)

Sorry. I got carried away.
Executive summary: Bernhard thinks that Wiki is good, good manual is better. Wiki can help with manual (but is no substitute).

smith May 25, 2005 09:52

Hi Bernhard, For editing a
Hi Bernhard,

For editing a Wiki could contributing authors perhaps be instructed to use MathML tags, they are slightly more cumbersome than LaTeX commands but surely a Wiki could easily support MathML.

A Big Bad Mother of a FOAM Manual can be put together from the Wiki by whoever wants to sell the thing. There may even be tools that convert MathML content pages to LaTeX, so even editing a book for later retail might not be such an onerous chore, that is if there's ever a market for printed hard copies.

gschaider May 25, 2005 10:59

Hi B.M. Concerning the type
Hi B.M.

Concerning the typesetting of formulas: the installed Wiki supports formulas entered in the LaTeX-Syntax. These formulas are converted to MathML or PNG for viewing (depends on the User settings). That was one of the main reasons why I chose this Wiki-implementation. (Examples can be seen in the Testing-Pages)

All times are GMT -4. The time now is 12:24.