|
[Sponsors] |
PISO algorithm for particular NS equation (special convection term) |
|
LinkBack | Thread Tools | Search this Thread | Display Modes |
July 25, 2011, 05:19 |
PISO algorithm for particular NS equation (special convection term)
|
#1 | |
Senior Member
Cyprien
Join Date: Feb 2010
Location: Stanford University
Posts: 299
Rep Power: 18 |
Hi !
I would like to solve a special "Naviers-Stokes" equation. It consists in a classical NS equation with an additionnal source term and a special convection term. Indeed, in the latter the velocity we look for solving is transported by a constant velocity. The final system can be formulated as follow: where e0 is a constant vector and U0 is a constant velocity field and of course the continuity equation for incompressible fluid: Moreover, the density and the viscosity are supposed to be constant. I tried the following PISO loop, but I not sure the PISO algorithm described in Jasak thesis is suitable to my equations : Quote:
Thank you for your help, Cyp |
||
July 25, 2011, 22:48 |
|
#2 |
Senior Member
Santiago Marquez Damian
Join Date: Aug 2009
Location: Santa Fe, Santa Fe, Argentina
Posts: 452
Rep Power: 24 |
__________________
Santiago MÁRQUEZ DAMIÁN, Ph.D. Research Scientist Research Center for Computational Methods (CIMEC) - CONICET/UNL Tel: 54-342-4511594 Int. 7032 Colectora Ruta Nac. 168 / Paraje El Pozo (3000) Santa Fe - Argentina. http://www.cimec.org.ar |
|
July 26, 2011, 04:37 |
|
#3 |
Senior Member
Cyprien
Join Date: Feb 2010
Location: Stanford University
Posts: 299
Rep Power: 18 |
Thank you for your answer.
Indeed the treatment of a momentum source term is a topic widely discussed. My main question deals with the convection term when is a constant velocity different than the variable we looked to solve. I am not sure the classical process with phi0 instead of phi in the convection term as I mentioned in the quoted code above is correct ? Regards, Cyp |
|
May 14, 2012, 11:44 |
convection term
|
#4 |
Member
Lev
Join Date: Dec 2010
Posts: 31
Rep Power: 16 |
Hello, Cyp
did you find any confirmation on topic how to treat convection term with some known U0 ? I have similar task, but without source term. Do i have to modify standard PISO loop from IcoFoam? In my case i have: + fvm::div(phi, U) + fvm::div(phi0, U) + fvm::div(phi, U0) |
|
May 16, 2012, 09:57 |
|
#5 | |
Senior Member
Cyprien
Join Date: Feb 2010
Location: Stanford University
Posts: 299
Rep Power: 18 |
Quote:
Hi levka, If you want to add fvm::div(phi0, U) in the Naviers-Stokes equations you do not have to change the PISO loop. However, the last term you mentioned cannot be treated implicitly (I mean, using fvm::div(...)). Indeed the unknown of this equation is U. When you use fvm::blahblah , you build the linear matrix system where U is the unknown. In your equation, fvm::div(phi,U0) means that you want to build the matrix for U0 within the matrix for U... It doesn't make sens. I suggest you consider this term as an explicit source term using fvc::div(phi,U0). Once again, in this case, the PISO loop doesn't change. Best, Cyp |
||
May 16, 2012, 10:06 |
...
|
#6 | |
Member
Lev
Join Date: Dec 2010
Posts: 31
Rep Power: 16 |
Thanks a lot!
I will give a try and come back. Quote:
|
||
May 20, 2012, 09:26 |
...
|
#7 |
Member
Lev
Join Date: Dec 2010
Posts: 31
Rep Power: 16 |
Hello, Cyp
Have a look at the attached picture (that is a probe of U in time). I computed the following: fvVectorMatrix UEqn ( fvm::ddt(U) + fvm::div(phi, U) - fvm::laplacian(nu, U) + fvm::div(phi0, U) ); solve(UEqn == -fvc::grad(p)- fvc::div(phi, U0)); Where U0- constant velocity profile, phi0- flux based on that U0. U(initially)- profile of full turbulent flow at Re=5000. The result i obtained is not expected: flow became absolutely laminar... I suppose to see turbulent flow, according to the math equations Do you have any idea? |
|
May 20, 2012, 17:55 |
|
#8 |
Senior Member
Cyprien
Join Date: Feb 2010
Location: Stanford University
Posts: 299
Rep Power: 18 |
If you consider the additional source term as an argument of the solve function, you have to modified the reconstruction of the velocity (see the link mentioned in the second post of this topic).
You should try : Code:
fvVectorMatrix UEqn ( fvm::ddt(U) + fvm::div(phi, U) - fvm::laplacian(nu, U) + fvm::div(phi0, U) + fvc::div(phi, U0) ); solve(UEqn == -fvc::grad(p)); Cyp |
|
June 12, 2012, 10:36 |
...
|
#9 |
Member
Lev
Join Date: Dec 2010
Posts: 31
Rep Power: 16 |
Cyp,
finally i found that your idea is working, thanks! Code:
fvVectorMatrix UEqn ( fvm::ddt(U) + fvm::div(phi, U) - fvm::laplacian(nu, U) + fvm::div(phi0, U) + fvc::div(phi, U0) ); solve(UEqn == -fvc::grad(p)); |
|
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
source term units - poission equation | johnwinter | Fluent UDF and Scheme Programming | 0 | June 6, 2011 01:53 |
Estimate convection and diffusion terms in transport equation | Lance | CFX | 0 | April 4, 2011 12:16 |
Pressure work term in turbulent K.E. equation | lost.identity | Main CFD Forum | 0 | March 8, 2011 13:21 |
Modified Equation for CFX algorithm | Craig Johansen | CFX | 0 | August 28, 2004 00:02 |
bouyancy term in epsilon equation | Michael | Main CFD Forum | 1 | June 25, 1999 11:20 |