Periodic Boundary Conditions: Does this feature work?

I have been unable to get the “Periodic” boundary condition type to work in Simscale. When you use periodic BCs, how are you expected to provide the forcing? (Couldn’t find in documentation). In the “Incompressible” simulation type, none of the momentum source options include “pressure gradient” and the “avg. velocity” option doesn’t seem to be implemented.

See the shared project “Cylinder - V1” which is just a “Incompressible” cfd simulation of a straight pipe aligned along the z-axis. It is a single Wall BC (the pipe wall) and a pair of surfaces defining a “Periodic” BC. I set the “average velocity” to Uz=1. …and it produces gibberish. Are there any examples of Public Projects where the Periodic BC was applied successfully in the direction of flow?

Best,

Joe

Hello!

From looking at the project, you haven’t setup periodic boundary conditions to the front and back faces, but instead you have “Symmetry” conditions:

Symmetry allows velocity in the tangent direction while blocking normal velocities, so this configuration is very much different from a “periodic” boundary condition. If you were to run this with an actual periodic boundary condition…

Then you would get this:

Thank you and sorry! I’m shocked that I missed that (I knew better)! Still, I’m a little unclear about how this velocity momentum source is working. Is the pressure also forced to be periodic, or just the velocity? The pressure solution doesn’t replicate a linear pressure drop that you would expect in this case; and the pressure at the entrance matches the exit. Increasing the number of iterations doesn’t seem to change that either.

I’d like to be able to calculate the Darcy permeability (proportionality between flow speed and pressure gradient) in porous structures, but I wasn’t able to figure out how to “measure” the pressure gradient using the tools at my disposal.

Best,

Joe

Perhaps I was able to answer my own question. In the solver log, it appears that on each iteration it is varying a pressure gradient to achieve the proper velocity:

Time = 2000

DILUPBiCGStab:  Solving for Ux, Initial residual = 0.000608802436504, Final residual = 9.96202641515e-07, No Iterations 2
DILUPBiCGStab:  Solving for Uy, Initial residual = 0.000501276940395, Final residual = 7.03616183134e-07, No Iterations 2
DILUPBiCGStab:  Solving for Uz, Initial residual = 4.2847195139e-06, Final residual = 9.00340730875e-09, No Iterations 2
Pressure gradient source: uncorrected Ubar = 1.00000016262, pressure gradient = 70.9406927541
GAMG:  Solving for p, Initial residual = 0.00138514028052, Final residual = 1.24084237912e-06, No Iterations 22
GAMG:  Solving for p, Initial residual = 8.49993574379e-05, Final residual = 8.95926181592e-07, No Iterations 4
Time step continuity errors : sum local = 8.34426256139e-06, global = 8.23515745013e-06, cumulative = 0.0178987590878
Pressure gradient source: uncorrected Ubar = 1.00000005057, pressure gradient = 70.955556475
ExecutionTime = 67.33 s  ClockTime = 85 s


UBlendingFactor execute :
    scheme 1 cells :  0
    scheme 2 cells :  13805
    blended cells  :  0

So I guess the average pressure gradient from the simulation is ~ 70.9 Pa/m. For a fully developed laminar pipe, I would expect dP/dx = 32 mu Vavg/ D^2 = 32*(9.3e-4 Pa-s)*(1 m/s)/(0.021m)^2 = 67.5 Pa/m, so this checks out I think!

1 Like