outflow boudary condition in SIMPLE algorithm
I have a question about the outflow boudary condition in SIMPLE algorithm. I am implenmenting SIMPLE(H.K. Versteeg and W. Malalasekera book) in matlab.
Dealing with outflow BC, their book suggested using Unx,j=Unx-1,j*Min/Mout as mass conservation outflow BC. where Unx,j is outflow u velocity, Min is mass flux at inflow , Mout is mass flux at outflow.My question is how to implenment the boudary condition as we dont know Mout?
I am using SIMPLE algorithm. So first I need to get u* and v* through previous u,v and p results. When setting up u* matrix, I need to know Mout, which is unknown at that time(I cant using previous u to calculate Mout because Mass conservation should happen within each iteration).
My thought was:
1. still using Unx,j=Unx-1,j as outflow BC to obtain the u*, of course it doest obey mass conservation.
2. then calculate Mout using u*
3. apply Unx,j=Unx-1,j*Min/Mout back into the u* matrix, to calculate u* again.
I dont know if I am wrong or not. And I dont know if I should force the mass conservation after I correct u* with p'(i.e, corrected u).
Right now my result looks like ossillating at internal. The two ends(inflow and outflow velocity) are stable, but the internal u velocity are not stable at all, it is ossillating and gradully diverging.
Your advice will be of great help.
|All times are GMT -4. The time now is 12:19.|