fluid flow boundary conditions Log Out | Topics | Search
Moderators | Register | Edit Profile

FlexPDE User's Forum » User Postings » fluid flow boundary conditions « Previous Next »

Author Message
Top of pagePrevious messageNext messageBottom of page Link to this message

Britta Hagmeyer (britta)
Member
Username: britta

Post Number: 14
Registered: 11-2006
Posted on Friday, August 17, 2007 - 12:03 pm:   

Hello everyone!

I want to model a velocity distribution in a 2D model (for testing, later on I want to implement the same in a 3D model). The model is designed like the example fex291 in the Backstrom book 'Fluid Dynamics'. But in my model the velocity inlet is very small compared to the whole model, and the velocity distribution is radial from this inlet. I want the left, upper and right boundary of the model to be treated as non-existent, meaning the radial velocity distribution should continue through these boundaries as if they weren't there. How do I have to change the boundary conditions of the left, upper and right side of my model to accomplish this? I've tried getting there with the NORMAL(v) operator and the GRAD(vx) operator, but I'm not convinced that I'm on the right track with this... How is it done correctly?

What I've achieved so far is attached to this post.

I've got another question:
In the simplified PDE, the pressure is being calculated by -c*div(v). How do I know if I've chosen the constant c correctly? Can I somehow link it to the compressibility of water?


Thanks for your help!
Cheers,
Britta
application/octet-streamsteady state fluid flow
NSs_2D_forum.pde (2.4 k)
Top of pagePrevious messageNext messageBottom of page Link to this message

Robert G. Nelson (rgnelson)
Moderator
Username: rgnelson

Post Number: 939
Registered: 06-2003
Posted on Friday, August 17, 2007 - 05:06 pm:   

1.
When you substitute the definition of p, the term dx(p) is of second order, so it is integrated by parts, as is visc*del2(vx).

The meaning of the Natural boundary condition for Vx is therefore
P-visc*dx(Vx) on the right
-visc*dy(Vx) on the top
-P+visc*dx(Vx) on the left

Natural(Vx)=0 therefore means
P=visc*dx(Vx) on the sides
dy(Vx)=0 on the top.

Similar arguments apply for Vy.

It therefore seems that Natural(Vx)=0 and Natural(Vy)=0 are the BCs you want on all three sides.

If you try this, you will see that the flow passes transparently through the boundaries. Material is drawn in at the bottom sides and forced out at the top. This is because the injection drags material upward, and this material must be replaced by inward flow from the sides.


2.
If you substitute the definition of p into the Vx equation, the equation becomes -(C+Visc)*dxx(Vx) + <other> = 0.
You should therefore pick a value for C which is large compared to Visc, but not so large that Visc is lost in roundoff error. The 1e4 you have used is reasonable. If you make it too large, it will dominate the numerics and the iteration will not converge. If you make it too small, the material will become compressible.

You do not want to relate it to the compressibility of water. This will result in a material that is far to stiff to be numerically tractable.

3.
If you are looking for radial flow, you might want to use a semicircular domain. See attached script.

4.
Your notes say this is a cylinder, but you are using Cartesian geometry. This means that you are really modelling a strip injection in the bottom of a trough. If you want a cylinder, you should use cylindrical geometry.

application/octet-stream
NSs_2D_forum2.pde (2.4 k)

Add Your Message Here
Post:
Username: Posting Information:
This is a private posting area. Only registered users and moderators may post messages here.
Password:
Options: Enable HTML code in message
Automatically activate URLs in message
Action:

Topics | Last Day | Last Week | Tree View | Search | Help/Instructions | Program Credits Administration