Darcy system has some issues with the free sliding boundary conditions

Hello everyone,

I am trying to use the Darcy system to simulate some fluids with constant velocities.However, under free sliding boundary conditions, the fluid is unstable and exhibits some “periodic behavior“ when moving to the boundary.

The problem can be reproduced by running darcy_velocity.prm in the tests folder,just changing the velocity boundary condition to free sliding.For example darcy_velocity.prm (5.6 KB)

step=0 initial fluid field,red represents 1, blue represents 0

step=57 obvious stripes show unstable

step=81 fluid appears from the lower boundary after passing through the upper boundary.but the free sliding boundary should not exhibit such behavior.

So how to reduce this instability, and more importantly, in the case of free sliding boundaries, the fluid can stop at the boundary or leave instead of appearing periodically
Could you please help me?
Thanks in advance,

Hi Kun,

Thanks for posting this question to the forum. I ran a few permutations of the original model (darcy_velocity.prm) from the test suite with a series of different configurations:

  1. Removed the horizontal component of the solid velocity (blob only rises)
  2. Same as 1, but with the composition not fixed on the model boundaries
  3. Same 1 and 2, but with only tangential velocities

In all cases, the same or similar artifacts to what you posted appear. I think what is happening is some sort of numerical artifact from solving the advection equation for the fields being advected by the darcy velocity, when the rising blob reaches the model surface. I’m not entirely sure why this is happening, but when I use an open top boundary and no fixed composition BC on the top the blob passes through the upper boundary as expected.

subsection Boundary traction model
  set Prescribed traction boundary indicators = top: zero traction
subsection Boundary composition model
  set List of model names = initial composition
  set Fixed composition boundary indicators = bottom, left, right
  set Allow fixed composition on outflow boundaries = true

I think you may have a identified a bug in the code, but first I think it would be worth testing how the model behaves when the fluid is tracked with particles instead of fields. Particles can be advected with the melt velocity, but I’m not sure if this is the case for the darcy velocity specific case. I will investigate further and get back to you. This may not be for a week or so, and if you have time to test this before then that would be fantastic.


1 Like

Hi John,

Thank you very much for your suggestion.After changing the boundary conditions of the composition field,the model is working!

I have a small guess about this issue,and it may be in the handling of composition boundary. The velocity of the darcy field should be the solid velocity plus the fluid velocity,but when assembling the advection boundary conditions of the darcy field, it seems to only use the solid velocity.

Thank you again!

Hi Kun,

Great to hear the issue is resolved after changing the composition boundary conditions.

Would you mind posting the exact modifications that ended up working?

Aside from the model I ran with the open top boundary, the issues you first pointed out still persisted.

Other items I was going to suggest trying included:

  1. Decreasing the CFL / maximum time step and
  2. Using fluid density in the Boundary fluid pressure model (default is solid density, link to parameter documentation).