Modeling Stokes flow in and around a droplet using the approach of step-46

84 views
Skip to first unread message

Oded Yaakobi

unread,
Oct 28, 2016, 5:54:27 PM10/28/16
to deal.II User Group

Hello,

 

I am working on modeling a phenomenon that is similar to Stokes flow in and around a droplet. In my model there are two sets of Stokes equations that govern the flow in each one of the media that are made of different materials – one set for the flow in the droplet, and the other for the flow around the droplet. This phenomenon resembles problems of fluid-structure interaction, so I would like to design my code using a similar approach to the one of step-46.


However, in my case, the droplet exhibits large deformations, so the interface between the media is not going to keep coinciding with cell boundaries, as assumed in step-46, unless the mapping will be time-dependent, e.g. using a MappingQEulerian object. The problem is that there is no MappingQEulerian constructor that can accept hp::DoFHandler object as an argument, so it seems that I cannot implement the approach of step-46.

Does anybody have any idea how to overcome this obstacle?

 

Thank in advance,

Oded

 

Jean-Paul Pelteret

unread,
Oct 30, 2016, 3:52:18 AM10/30/16
to deal.II User Group
Hi Oded,

As you've observed, this class is not yet compatible with the hp::DoFHandler. If you'd like to try to extend it to support this case then we'd be happy accept a patch and to help you in doing so.

Regards,
J-P

Oded Yaakobi

unread,
Dec 2, 2016, 3:13:04 PM12/2/16
to deal.II User Group

Hi Jean-Paul,

 

Following the correspondence between you and Tom in the last few weeks, I have realized that in my case, it might be more beneficial to actually move the triangulation vertices instead of using a MappingQEulerian object. I implemented this approach in my code, and so far, things seem to behave properly.

 

Now I encounter another aspect of my problem that I don’t know how to tackle – the matching conditions on the interface between the domains of the Stokes flow in the droplet and around it.

 

Attached is a description of the problem in detail. I would be happy to know if you or anyone else has some advice.

 

Thank you very much for your assistance,

Oded

Interface matching conditions - 2.12.2016.pdf

Wolfgang Bangerth

unread,
Dec 2, 2016, 5:18:22 PM12/2/16
to dea...@googlegroups.com
On 12/02/2016 01:13 PM, Oded Yaakobi wrote:
> Now I encounter another aspect of my problem that I don’t know how to tackle –
> the matching conditions on the interface between the domains of the Stokes
> flow in the droplet and around it.
>
>
>
> Attached is a description of the problem in detail. I would be happy to know
> if you or anyone else has some advice.

Typically, if you convert the equations into the weak form, you multiply the
equation by a test function and then you integrate (on each of the subdomains)
by parts. This yields terms that live on the boundaries of the subdomains,
including the interface between the subdomains. This is where you then need to
use the interface conditions.

In your code, this will lead to integrals over internal faces where these
faces sit at the interface.

Best
W.

--
------------------------------------------------------------------------
Wolfgang Bangerth email: bang...@colostate.edu
www: http://www.math.colostate.edu/~bangerth/

Oded Yaakobi

unread,
Dec 2, 2016, 5:49:09 PM12/2/16
to deal.II User Group, bang...@colostate.edu

Hi Wolfgang,

 

I know that the typical treatment of the interface matching conditions is along the lines that you noted. However, it is not clear to me how to follow these guidelines in the particular case that I am working on, which is described in the file that I attached to my previous email. In particular, in my case,

 

a)    The matching conditions involve gradients of velocity and pressure, and not just the velocity and pressure fields.

b)     The matching conditions involve time-dependent fields, so probably the explicit form of the constraints has to be updated each time step.

 

In order to address point a), I thought that maybe I should define additional degrees of freedom that correspond to the components of each one of the gradient terms that appear in my matching conditions (e.g. for the pressure gradient add DOFs P_i_x, P_i_y and P_i_z). I would then define the constraints with respect to those new DOFs, and would also have to assemble the corresponding equations (e.g. P_i_x = dP_i/dx).

 

Is this the recommended way to address point a), or is there another way which is better?

 

Thank you,

Oded

Jean-Paul Pelteret

unread,
Dec 5, 2016, 6:44:55 AM12/5/16
to deal.II User Group, bang...@colostate.edu
Hi Oded,

Is this the recommended way to address point a), or is there another way which is better?


I don't work primarily in fluid-mechanics, so this is a bit out of my field of knowledge (and comfort zone) and I'm going to defer to other's wisdom here. I suppose you're uncomfortable that you have to apply the continuity condition in a weak sense, as opposed to directly through constraints. Is there any particular reason as to why this might be the case?

Regards,
J-P

Oded Yaakobi

unread,
Dec 5, 2016, 11:47:17 AM12/5/16
to deal.II User Group

Hi Wolfgang and Jean-Paul,

 

It seems that one of Wolfgang’s replies to me was not shared through the user group, so I forward it here.  My response is listed below it.

 

 

On 12/2/16, 6:18 PM, "Wolfgang Bangerth" wrote:

 

 

Oded,

 

I know that the typical treatment of the interface matching conditions is

along the lines that you noted. However, it is not clear to me how to follow

these guidelines in the particular case that I am working on, which is

described in the file that I attached to my previous email. In particular, in

my case,

 

 

 

a)    The matching conditions involve gradients of velocity and pressure, and

not just the velocity and pressure fields.

 

If it doesn't fit into the weak form, and if it isn't easily described as

constraints on degrees of freedom (as we do for Dirichlet values) then I don't

know either. What do others who have published on these models do?

 

 

b)     The matching conditions involve time-dependent fields, so probably the

explicit form of the constraints has to be updated each time step.

 

 

 

In order to address point a), I thought that maybe I should define additional

degrees of freedom that correspond to the components of each one of the

gradient terms that appear in my matching conditions (e.g. for the pressure

gradient add DOFs P_i_x, P_i_y and P_i_z). I would then define the constraints

with respect to those new DOFs, and would also have to assemble the

corresponding equations (e.g. P_i_x = dP_i/dx).

 

Correct. You need to update the ConstraintMatrix object in every time step.

 

Best

  W.

 

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


Wolfgang:

I am working on generalizing a model that originally described only the interior domain by the equations that I wrote on my Friday’s notes. I am not familiar with anyone who solved the combined set of equations for the interior and exterior domains. However, a simpler problem should be common in other situations where the droplet is made of a single phase. In these cases, a matching condition in the form of Eq. 10 in my notes should be satisfied (with \Psi=0). In recent days I have surveyed the literature to learn how people deal with these situations, but still haven’t found an answer.

 

Jean-Paul:

I don’t understand exactly what you have suggested. Could you please elaborate more on how would you impose a matching condition such as Eq. 10 in a weak sense?


Best, 

Oded

 

Wolfgang Bangerth

unread,
Dec 5, 2016, 1:12:39 PM12/5/16
to dea...@googlegroups.com
On 12/05/2016 09:47 AM, Oded Yaakobi wrote:
> I am working on generalizing a model that originally described only the
> interior domain by the equations that I wrote on my Friday’s notes. I am not
> familiar with anyone who solved the combined set of equations for the interior
> and exterior domains. However, a simpler problem should be common in other
> situations where the droplet is made of a single phase. In these cases, a
> matching condition in the form of Eq. 10 in my notes should be satisfied (with
> \Psi=0). In recent days I have surveyed the literature to learn how people
> deal with these situations, but still haven’t found an answer.

Oded -- I guess finding a way of implementing your model is then part of the
research you have to do.

I'm going to add this as a note: You can think of these interface conditions
as boundary conditions for one side if you knew the solution on the other side
of the interface; of as a boundary condition for the other side if you knew
the solution on this side. As a consequence, only certain kinds of interface
conditions actually make sense. For example, if you had a Laplace equation on
both sides of an interface, an interface condition of the kind
u|_\Omega_1 = u|_\Omega_2
make sense because it corresponds to Dirichlet boundary conditions for one of
the solutions if the other one were known. Likewise, the following all make sense:
partial_n u|_\Omega_1 = partial_n u|_\Omega_2
partial_n u|_\Omega_1 = u|_\Omega_2
(u + alpha partial_n u)|_\Omega_1 = u|_\Omega_2
...
because they correspond to Neumann or Dirichlet or Robin boundary conditions.

But, the following does not make any sense:
grad u|_\Omega_1 = grad u|_\Omega_2
That's because for the Laplace equation, you can't impose the gradient at the
boundary, only its normal component.

Of course, the types of interface conditions that are allowed are also the
ones that are typically easy to implement -- Neumann and Robin conditions go
into the weak formulation, Dirichlet conditions go into a ConstraintMatrix. If
the interface conditions you have do not easily fit into this pattern, then
that does not *automatically* mean that you formulation is ill-posed and may
not have a solution, but it would certainly make me *question* whether it is
ill-posed, and if necessary *prove* that it is well-posed before I would try
to implement it. There is nothing worse than spending the time implementing a
model for which it later turns out that there are no solutions :-)

Cheers

Jean-Paul Pelteret

unread,
Dec 6, 2016, 11:03:30 AM12/6/16
to deal.II User Group
Dear Oded,

I believe that Wolfgang has answered your question in much more detail and much more precision than I would have, so I think that there's no need for me to elaborate on further on what I said.

Regards,
J-P

Oded Yaakobi

unread,
Dec 6, 2016, 12:24:10 PM12/6/16
to deal.II User Group
Dear Wolfgang and Jean-Paul,

I appreciate very much your assistance.

The explanation in Wolfgang's last reply clarified to me some things that I didn't fully understand previously. I believe that now I know how to implement the interface matching conditions in my code. It seems to me that I could implement my Eq. 9 for the velocity through the ConstraintMatrix, and Eq. 10 for the stress in the weak form.

Thank you,
Oded
Reply all
Reply to author
Forward
0 new messages