CFD Online Logo CFD Online URL
Home > Forums > OpenFOAM Running, Solving & CFD

Programming a coupled solver

Register Blogs Members List Search Today's Posts Mark Forums Read

LinkBack Thread Tools Display Modes
Old   March 3, 2006, 06:11
Default Dear all, I know this is a
New Member
Join Date: Mar 2009
Posts: 24
Rep Power: 10
didomenico is on a distinguished road
Dear all,
I know this is a subject already discussed in this list, but I could not find any ultimate answer to the problem.
In order to increase the stability of OpenFOAM, I would like to implement a coupled version of the solver. In my experience, the solver's stability is greatly improved even if only the three velocity components are solved together (higher CFL numbers / relaxation factor can be used) even with a diagonal preconditioner. Moreover, in some problems (stiff chemistry, hypersonic flows) I experienced convergence problems due to the strong coupling between the equations.
So, I would like to start with a point-implicit coupling in order to keep the number of changes ast the minimum.
First question: should I implement it at matrix level (a new fvCoupledMatrix class?) or somewhere else? I have already started some work, but I am not sure if this is the right level at which the changes have to be done.
Second question: according to the presentation that Hrvoje gave in the "OpenFOAM Training and Workshop" (unfortunatelly I could not be there ) there should be already some work done. If possible, I would like to contribute to its development. In particular, I would like to try it on some cases which show very bad convergence because of coupling between the three velocity component (viscous, hypersonic flows).

Thank you for your help
didomenico is offline   Reply With Quote

Old   March 5, 2006, 04:04
Default Yes, a lot of work is already
Senior Member
Hrvoje Jasak
Join Date: Mar 2009
Location: London, England
Posts: 1,810
Rep Power: 25
hjasak will become famous soon enough
Yes, a lot of work is already done. The block coefficient, coefficient field, and block matrix classes are finished, together with the linear equation solvers (currently, block CG and Gauss-Seidel + the segregation solver algorithms off the same matrix), constraint conditions etc. I also have some discretisation operators sufficient to test this thing on real problems. The bad news is that there's still some bugs and I haven't got the time to get it sorted out until the rest of my life is put into order.

I am also planning another layer of FOAM-related stuff on top of the matrix support to handle arbitrary coupling and trasnparent multi-variable handling.

However, I am not ready to release this publicly just yet. This project adds substantial new capabilities (including the stuff you are after), it has taken quite a long time, it needs to be finished and i want to get my work published. Of course, a part of the game is that the code gets debugged and validated in the process. If you wish to know more, feel free to drop me an E-mail.

Hrvoje Jasak
Providing commercial FOAM/OpenFOAM and CFD Consulting:
hjasak is offline   Reply With Quote


Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On

Similar Threads
Thread Thread Starter Forum Replies Last Post
coupled solver ztdep Main CFD Forum 4 August 13, 2008 06:30
coupled solver ankit Main CFD Forum 0 January 24, 2008 00:11
segregated solver vrs coupled solver sm FLUENT 0 November 6, 2007 02:24
coupled solver mehdi FLUENT 0 August 27, 2007 09:49
coupled solver / uncoupled solver Jaan Unger Main CFD Forum 0 September 3, 2002 08:30

All times are GMT -4. The time now is 23:44.