Computational Science Asked by yemino on December 10, 2020
I always see Finite Element codes solving PDE with Dirichlet or Neumann boundary conditions. But, I have a problem now consisting of a straight cylinder with a circular base (a simple 3D tube), with inflow and outflow given by a pressure variation (for example, $p_textrm{inflow}=20$ at the left circular "cap" and $p_textrm{outflow}=0$ at the right circular "cap", and velocity equal to zero in the boundary that is not inflow nor outflow (so, the flow go in through the inflow circular side and go out through the outflow circular side because of a pressure variation).
I’m solving Navier–Stokes equations for the fluid (I think it is not an important data):
$u_t-nuDelta u+(nabla u)u+nabla p=f$ in a boundary domain $Omega$
$nablacdot u=0$ in $Omega$
so my unknowns are the velocity $u$ and the pressure $p$. The effects of gravity are neglected. For simplicity, we may consider the stationary equation only.
How I must modify the code in order to work with that pressure difference data? My code (and numerical analysis) only accepts Dirichlet and Neumann boundary conditions.
In the Navier-Stokes equations, you can't prescribe the pressure on the boundary (or part of it). That's just not a physical thing, nor mathematically correct. The only thing you can prescribe is the traction, i.e., the normal component of the stress, which is given by $$ mathbf t = (-nu nabla mathbf u + pI) mathbf n. $$ For example, you could prescribe that the traction should be $$ mathbf t|_{Gamma_text{in}} = 20 $$ and a corresponding value on the outflow part $Gamma_text{out}$.
Boundary conditions are tricky. If you want to learn more about it, you might want to watch lectures 21.5 and following here: https://www.math.colostate.edu/~bangerth/videos.html
Correct answer by Wolfgang Bangerth on December 10, 2020
Get help from others!
Recent Questions
Recent Answers
© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP