Solid + two-phase + axi

1,260 views
Skip to first unread message

jose.lopez...@gmail.com

unread,
Dec 20, 2018, 11:43:15 AM12/20/18
to basilisk-fr
Hi all,

I am trying to model the discharge of a cylindrical tube in the ambient. Therefore I have  a solid + axi + two-phase problem.

At the moment Basilisk have several tools for doing this:

a) Use mask to model the solid. This work reasonably well  but it has the major constrain that the  postprocessing is not available since the incompatibilty of + mask + dump + bview2D.

b) The new library embed.h. Not available yet with the metric. To fix the metric terms (and eventually make it compatible with volume fractions) could not be easy and it would need time.

c) To use the Stephane's trick. The solid is a volume fraction. The velocity in the cells included solid is enforced. (as in tangaroa.c and some test in the Antoon & Stephane's sandboxes). This a little rough but  do the job.  I have implemented it (see the attached file) .

However, I am not sure if this trick can be implemented if initially the solid intersect the boundary. With my code the simulation diverge from the very first istep. Am I missing some detail in the initialization or the boundary condition?


Cheers, thanks in advance and Merry Christmas!

Jose

jet_discharge.c

Antoon van Hooft

unread,
Dec 21, 2018, 3:40:52 AM12/21/18
to basilisk-fr
Hallo Jose,


>Am I missing some detail in the initialization or the boundary
 condition?

Yes, try not to force fluid into the `solid', it can only leak so
much.

//e.g.
u
.n[left]  = dirichlet (2.*(1. - sq(y))*(sq(y) < 1));
Complains from the multigrid strategy (NITERMAX > 100) often hint at a
nonphysical setup.

Furthermore, when boundary conditions for the fov tracer are also a
concern, mask may have an advantage over Stephane's trick.

Antoon

jose.lopez...@gmail.com

unread,
Dec 21, 2018, 5:58:00 AM12/21/18
to basilisk-fr

Hello Antoon,


>Am I missing some detail in the initialization or the boundary
 condition?

Complains from the multigrid strategy (NITERMAX > 100) often hint at a
nonphysical setup.


Indeed!, when I have set compatible boundary conditions (zero velocity adjacent to the solid)
as you suggested the program has run like a charm! Thanks for your help!


Furthermore, when boundary conditions for the fov tracer are also a
concern, mask may have an advantage over Stephane's trick.


True, although I think that in this particular problem with an outflow at the right it should not be a matter of concern.

Antoon van Hooft

unread,
Dec 21, 2018, 10:14:25 AM12/21/18
to basilisk-fr
Hallo Jose,

The attached code runs the injection problem three times and
generates the attached movie.  The first run is with a 180
degrees contact angle (no wetting), second 90 degrees, third with
perfect wetting.  The result may not be fully converged but I'd
say the boundary condition for the tracer field appear to be
important for the dynamics.

Merry Christmas to you too!

Antoon
jet_dischargejose.c
movie.mp4

Lachlan Mason

unread,
Jan 30, 2019, 12:36:10 PM1/30/19
to basilisk-fr
I've tried to reproduce this case using Antoon's suggested `sq(y) < 1` update. I'm seeing a seepage of the VOF interface profile into the "needle" wall – see the attached image (apologies for the low resolution). Do you know if the use of `mask()` is the only method available to avoid such seepage into the wall?
f_and_needle.png

Stanley Ling

unread,
Jan 30, 2019, 12:59:41 PM1/30/19
to Lachlan Mason, basilisk-fr
Lachlan, 

Just to echo on your question, I have met similar situations in my simulation. It does not happen to me all the time, but whenever it shows up, I have not yet find a fix. 

Stanley 

--
You received this message because you are subscribed to the Google Groups "basilisk-fr" group.
To unsubscribe from this group and stop receiving emails from it, send an email to basilisk-fr...@googlegroups.com.
To post to this group, send email to basil...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/basilisk-fr/6da3e6ec-4fb2-4161-8ba1-b6036e46decb%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


--
"Stanley" Yue Ling  <><

Jésus lui dit: C'est moi qui suis le chemin, la vérité et la vie. - Selon Jean 14:6
Jesus said to him, "I am the way, and the truth, and the life.” - John 14:6
耶稣说:“我就是道路,真理,生命” - 约翰福音14:6

Antoon van Hooft

unread,
Jan 31, 2019, 3:42:57 AM1/31/19
to basilisk-fr
Hallo Lachlan,

You could include some more trickery to reduce the most prominent issues with leakage,
e.g. do not to prescribe a wet wall inside the solid:
f[left] = (y < 1);
will fix the rendering but more critical leakage tests will still fail.

Mask will run and display no leakage but it might fail some other basic tests in this use case.
As hinted here:   

There is no proper implementation of general boundaries that actually is intended to work with
axi + two-phase at the moment. I think the embedded boundary method may be extended in
the future to deal with it consistently.

Antoon

Stephane Popinet

unread,
Jan 31, 2019, 3:46:14 AM1/31/19
to basil...@googlegroups.com
> I think the embedded boundary method may be extended in the future to
> deal with it consistently.
Yes.

Stephane

Reply all
Reply to author
Forward
0 new messages