
[Sponsors] 
June 29, 2006, 12:31 
I want to solve 2 scalar trans

#1 
Member
chris book
Join Date: Mar 2009
Posts: 85
Rep Power: 10 
I want to solve 2 scalar transport equations which are coupled.
I was wondering how to treat the equation intercoupling in OpenFOAM? Can anybody tell me how to do this? 

June 29, 2006, 18:46 
What is the nature of the coup

#2 
Senior Member
Michael Prinkey
Join Date: Mar 2009
Location: Pittsburgh PA
Posts: 316
Rep Power: 16 
What is the nature of the coupling? If it is coupling of a source form like:
c(phi_0  phi_1) it is possible to partial elimination to nice accelerate interscalar coupling. I suggest you show the full form of the scalar equations you are trying to solve. Mike 

June 30, 2006, 04:28 
it is more a general question

#3 
Member
chris book
Join Date: Mar 2009
Posts: 85
Rep Power: 10 
it is more a general question how to solve coupled scalar transport equations.
Is anybody able to show the "general" way how to deal with interequation coupling in OpenFOAM? 

June 30, 2006, 06:09 
OpenFOAM currently only handle

#4 
Senior Member
Michael Prinkey
Join Date: Mar 2009
Location: Pittsburgh PA
Posts: 316
Rep Power: 16 
OpenFOAM currently only handles segregatedtype solution procedures...only a single unknown field can be solved at a time. So solving two scalar fields require an iterative/timestepping scheme that did successive substitution. Something like:
while (UNCONVERGED) { solve(fvm::...(phi_0) == fvc::...(phi_1)); solve(fvm::...(phi_1) == fvc::...(phi_0)); } The first solve will compute explicitly the phi_1 contribution in the first equation and then solve it implicitly for the new value of phi_0. The reverse happens in the second solvesource terms are computed using phi_0 and then phi_1 is solved implicitely. After iterating several times, the phi_0 and phi_1 fields will become consistent (we hope). Now, this will fail to converge or converge slowly if there is strong coupling between the scalar equations. If the coupling form is as I mentioned in the earlier post, then there is a nice trick (partial elimination algorithm) that will allow you to approximate the coupling term between the two scalars and significantly increase robustness and convergenece. To do more generally coupled scalar fields will require a block solver. That will allow the simultaneous solution of phi_0 and phi_1 and allow all of the terms to be treated implicitly. Such as solver mechanism is currently unavailable in OpenFOAM. Mike 

August 18, 2006, 06:24 
It there somewhere a example h

#5 
Member
chris book
Join Date: Mar 2009
Posts: 85
Rep Power: 10 
It there somewhere a example how to solve couled equations (not pU coupling) in OpenFOAM?


August 25, 2006, 07:49 
Can someone push me into to di

#6 
Member
chris book
Join Date: Mar 2009
Posts: 85
Rep Power: 10 
Can someone push me into to direction how to solve coupled scalar equation in a general way?
I think this is a popoular issue and many people are interessted in. I cannot find any reference in the tutorials or in the discussion forum. 

August 25, 2006, 08:05 
Chris,
I answered your ques

#7 
Senior Member
Michael Prinkey
Join Date: Mar 2009
Location: Pittsburgh PA
Posts: 316
Rep Power: 16 
Chris,
I answered your question back in June. There are no coupled linear equation solvers currently availabe in OpenFOAM. The solution approach is to freeze one of the scalars, compute terms based on that scalar explicitly (with fvc:: operators) and solve for the other scalar implicitly (with fvm:: operators.) Then freeze the other scalar and treat the other implicitly. Then just iterate until the system converges. If you are still having difficulty understanding this, please post the equations you need to solve. Perhaps an example would help. Mike 

August 25, 2006, 08:18 
Yes you are right Mike, I was

#8 
Member
chris book
Join Date: Mar 2009
Posts: 85
Rep Power: 10 
Yes you are right Mike, I was just wondering if there is any example how to do this. I want to solve the following 2 transport equation for XiVar and Chi:
ddt(rho, XiVar) + div(phi, XiVar)  laplacian(turbulence>mut()/Sct, XiVar) == C1*(turbulence>mut()/Sct)*magSqrGradXi  rho*Chi ddt(chi) == Su(C1*turbulence>epsilon/turbulence>k,chi) + C2*(1/XiVar) Note: I know this is not correct Foam syntax. This is just to present the equations I want to solve. 

Thread Tools  
Display Modes  


Similar Threads  
Thread  Thread Starter  Forum  Replies  Last Post 
How to add transport equations  alimansouri  OpenFOAM Running, Solving & CFD  6  January 12, 2009 17:20 
How to solve coupled transport equations  nandiganavishal  OpenFOAM Running, Solving & CFD  4  November 22, 2008 17:43 
Solve Coupled Equations  nandiganavishal  OpenFOAM Running, Solving & CFD  1  November 12, 2008 23:47 
Coupled equations solution  litonx  OpenFOAM Running, Solving & CFD  7  February 14, 2007 19:31 
Coupled mass and heat transport  yves  OpenFOAM Running, Solving & CFD  1  May 5, 2006 05:33 