Question regarding Poiseuille flow

Greetings forum users,

I'm trying to model Poiseuille flow in DualSPHysics. However, I run into quite a lot of problems. (I will present quickly what I did and then was goes wrong).

For modelling Poiseuille flow, I create a 2D case using the DesignSPHysics plugin for FreeCAD. I create 3 objects, top & bottom which is solid and the center is fluid. I then introduce a constant force (Using example 04_ExternalForces) and enable x_periodicity. I know that a proper "inlet" and "outlet" are not yet added to DualSPHysics 4.2 but will be added in next version so I was trying to use this work-around.

Now the actual problems.
Firstly, my velocity (V_x(z)) never reaches a constant value, it keeps fluctuating quite a lot over time. I let the simulation run for a relatively long time (100 seconds) and I applied a constant force of 0.5 m/s^2 over the whole simulation.
Secondly, I know there are some boundary issues with SPH, but I get too much of a deviation. The velocity very near the walls is quite high and not close to 0 (I believe the no-slip boundary condition is set automatically, please correct me if I am wrong).
Thirdly, the velocity profile across the 2D pipe is not symmetrical, I noticed that the hyperbole is shifted slightly towards one side (usually lower velocity at bottom of the pipe). I do not know what causes it.

My ultimate goal is to simulate blood flow (multi-phase, Re~100), so I was trying to benchmark simple Poiseuille flow.

If anyone got some tips/directions or explanations I will gladly hear them. Additionally, I tried adding figure files but it was not allowed, if there is a need I will try to post some results (and possible input).

Much appreciated already,


  • I hope this helps
    You can follow this exampl:
    But note that witth DBC (boundary conditions) you have to use high resolution...

  • Hey Alex,
    Thanks for the reply.
    I was following the example, and trying to do it from scratch. I indeed narrowed down the issue to the resolution, but thank you for confirming my suspicion.
    I'm just surprised how high the resolution has to be for it to be resolved properly. The diameter of the channel is 1 mm in the example, while I would like to model something along the size of 50 mm diameter. Would this mean that a ridiculous amount of particles would be needed? (Or could I increase the resolution near the boundaries only?)

  • The problem of resolution is more important for this academic case, since DualSPHysics is developed for engieering problems. However this academic case can be also solved if high resolution is used since DBC do not solved properly the boundary layer.
    We are working on different type of boundary conditions, but DBC are ok for real applications, but no for academic cases as this one

  • Hello Dominykas,

    I'm trying to do the same thing as you are. Only difference is I'm using fill algorithm instead of a third rectangle(box) for the fluid.

    In examples/Poiseuille the driving force is the acceleration in z-direction. What I'm trying is to change the geometry such that the flow will be in x-direction due to the force acting in x-direction. I started with taking gravity to be in x-direction with a magnitude of 0.0001 just like in Poiseuille test case.

    Attached is the velocity field I'm getting. Any ideas on what I might be missing?

    Thank you.
  • Hello Circles,

    In the Poiseuille example (15) the driving force should be in the x-direction, 0.0001 G.
    From what you told me I can not pinpoint the error exactly. However, it could be related to your data range. I believe you are using paraview, and you can rescale your data range quite easily. Your data range goes from 3 to 0.003 m/s, which is way too high. The velocity should be around 1e-05, for a force/gravity_x of 0.0001G.
    Have you used the .xml provided by example 15, or did you make your own (by modifying example 01 for example)? You could be possible not simulating it "fine" enough.

    I hope this gives you some direction to work in.

Sign In or Register to comment.

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!