|
[Sponsors] |
May 17, 2001, 17:47 |
Poisson BC's
|
#1 |
Guest
Posts: n/a
|
Hi to all,
while trying to implement the pressure equation (Poisson) and enforce continuity in order to solve the incompressible Euler equations a choice on the boundary conditions type must be done. Either Dirichlet or Neumann, what it is for sure is that BC's for the pressure must be prescribed in all the borders of the domain of study. But this is not the same for the fluid-dynamic problem, one must prescribe conditions at the inlet with care (and not to overspecify the problem) without knowing what it is happening downstream. My question is: How can one specify BC's to solve Poisson equation at all borders without knowing the solution of the fluid-dynamic problem??? Any help will be good Peter |
|
May 17, 2001, 19:20 |
Re: Poisson BC's
|
#2 |
Guest
Posts: n/a
|
The BC's for pressure depend on the ones you use for the normal velocity. When the normal velocity is imposed (at a wall or at the inlet), a Neumann BC prevails for the pressure. When the velocity (or mass flow) is free, a dirichlet BC is imposed to the pressure (usualy it is at an outlet).
Now, depending on the projection method you use (SIMPLE, SIMPEC, SIMPLER, Chorin projection-1, Chorin's projections-2....), the NEUMAN BC for the pressure (or correction of pressure) as to be such that the velocity at the end of the time step will be divergence free. For more info on pressure BC's, you should look for some of the books written by Grasho and Sani. |
|
May 18, 2001, 05:40 |
Re: Poisson BC's
|
#3 |
Guest
Posts: n/a
|
I am writing a general purpose CFD code based on a pressure poissons equation (PPE) formulation. The solutions are obtained with an ADI-Brian method with the PPE parabolized to include an artifical compressibility. I think your question is really quite simple. Basically all you do is obtain the velocity field based on an initial pressure field (initially isobaric, all zeros for example). The update in u,v,w is applied to the PPE BC formulation. u,v,w change because of the BCS inposed by momentum equations, e.g. inflow velocity boundary, etc. See below. After advancing the PPE solution, you have a revised P field. Solve u,v,w again and repeat until the divergence of the velocity field is acceptably small.
As I mentioned, I use an ADI formulation. This requires that the elipticity of the pressure field be removed. By adding a time derivative term to the PPE, it is parabolized. It looks like a heat equation and it can be routed to an ADI solver. Momentum - no problem to parabolize either. Now all states [u,v,w,T,P] ^T are parabolized. Bottom line is a CFD solver that is very fast and requires no iteration. BCs on PPE. This is also very conventional. Combination of Neumann and Dirichlet. Example: outflow velocity boundary is Neumann in velocity but Dirichlet in Pressure (set P = 0 to outlet). Inflow BC is Dirichlet in u and v, but Neumann in pressure. Same for walls, Dirichlet in V = 0 and Neumann in P. Neumann on all walls for P? This is a pain. You must adjust the interior source to keep the pressure integration from floating. Must maintain the Neumann condition numerically. But this arrangement only happens on completely closed systems like the cavity driven flow problem. Not too conventional. How to impose a Neumann P BC? Pretty conventional. Compute a control surface state for each CV. The value of the CS state is computed from the CV value and the gradient solved. The gradient is determined from the Neumann formulation for the particular state. Example: T Neumann condition is just a heat flux BC, that is a prescribed temperature gradient. (T_CS - T_CV) / dx = GRAD(T) BC Solve for T_CS given the interior solution of T_CV i for pressure the BC (gradient normal to the wall en): GRAD(P) dot en = -rho(V' + GRAD V [V]) + mu GRAD.GRAD(V) ) dot en This BC is somewhat tricky to implement. Must watch en signs and so on. Also very tricky to implement in ADI but still doable. I can send some examples if you are interested best regards Dean |
|
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Poisson equation,Neumann BCs | zhangweisnoopy | Main CFD Forum | 39 | February 11, 2019 19:32 |
Dealing with BC's in OF 1.6 | vkrastev | OpenFOAM Running, Solving & CFD | 5 | September 4, 2012 12:58 |
BCs for Pressure Correction Equation (SIMPLE) | Bharath Somayaji | Main CFD Forum | 1 | March 1, 2006 07:12 |
Recommendation of a good poisson solver | Quarkz | Main CFD Forum | 2 | December 2, 2005 10:12 |
Poisson Equation in CFD | Maciej Matyka | Main CFD Forum | 9 | November 10, 2004 12:30 |