diffusion problem

Exchange about the physics background, diffuse interface theory, etc..
Post Reply
zhubq
Posts: 84
Joined: Mon Jun 22, 2009 7:33 pm

diffusion problem

Post by zhubq » Wed Apr 06, 2011 1:07 am

Hi, Bernd.
when solving the diffusion equation in the interface, how does MICRESS calculate the gradient of the concentration at the edge of the interface?

Because if the point is at the edge, we have to use the points out of the interface to calculate the gradient \nabla {c_i}. For phase field equation, the value of \phi_i is 0 out of the interface. But for the concentration, if the value of \phi_i is 0, what's the concentration c_i?

By the way, the diffusion equation can be formulated like this?:
\dot{c}=\sum D_\alpha (\phi_\alpha \nabla^2 c_\alpha+\nabla\phi\nabla c_\alpha)
where D_\alpha is the diffusivity of phase \alpha.

Bernd
Posts: 1074
Joined: Mon Jun 23, 2008 9:29 pm

Re: diffusion problem

Post by Bernd » Wed Apr 06, 2011 12:23 pm

Hi zhubq,

Diffusion as implemented in MICRESS can be described for a single component like you did, your formulation can be obtained from the standard formulation

\dot{c}=\sum_\alpha \nabla (D_\alpha \phi_\alpha \nabla c_\alpha)

using the product rule of differentiation and assuming a constant value of D_{\alpha}.

For discretisation, the fundamental question is how to obtain D_{\alpha} and \phi_{\alpha} because they are defined between the grid points like \nabla c_{\alpha}. Normal averaging between the left and right grid cell like

\phi_{\alpha} = (\phi^r_{\alpha}+\phi^l_{\alpha} )/2

would lead to the problem that, if e.g. in an interface one of the phases had no solubility at all for the component under consideration, there would be still a flux into this stoichiometric phase, even if \phi for the other phase is zero. Therefore, we instead apply the modified averaging scheme

\phi_{\alpha} = 2\phi^r_{\alpha}\phi^l_{\alpha}/(\phi^r_{\alpha}+\phi^l_{\alpha} )

which avoids such problems

By this way, it also doesn't matter that we do not know \nabla c_{\alpha}, if in one grid point \phi_{\alpha} is zero.

zhubq
Posts: 84
Joined: Mon Jun 22, 2009 7:33 pm

Re: diffusion problem

Post by zhubq » Wed Apr 06, 2011 6:59 pm

Hi, Bernd.
I am not sure whether my understanding is right.
First of all, you get the values of D_\alpha \phi_\alpha \nabla c_\alpha e.g. (Y(i-0.5) and Y(i+0.5)) between each two grid points e.g. X(i-1), X(i) and X(i), X(i+1). Then you use the two values ((Y(i-0.5) and Y(i+0.5))to get \nabla(D_\alpha \phi_\alpha \nabla c_\alpha) at point i.

zhubq
Posts: 84
Joined: Mon Jun 22, 2009 7:33 pm

Re: diffusion problem

Post by zhubq » Wed Apr 06, 2011 7:27 pm

if \phi_i >0 and \phi_{i-1}=0, how to calculate \nabla c in between?

Bernd
Posts: 1074
Joined: Mon Jun 23, 2008 9:29 pm

Re: diffusion problem

Post by Bernd » Wed Apr 06, 2011 8:33 pm

If X(i-1)=0, like in your case, then Y(i-0.5) must be 0, whatever the value of \nabla c is, i.e. you don't need to know it! The total composition change is then only Y(i+0,5).

The trick is that the total composition change in grid cell i is calculated as the sum of all pair-wise fluxes with the neighbour grid cells. The fluxes of all pairs which have a fraction of 0 in at least one cell are 0, and you need not calculate \nabla c for them!

zhubq
Posts: 84
Joined: Mon Jun 22, 2009 7:33 pm

Re: diffusion problem

Post by zhubq » Wed Apr 06, 2011 9:27 pm

Hi, Bernd.
Thank you. Now I know it. A numerical trick has to be used to enforce the pair-wise flux to be 0 if the neighbor has a zero value of order parameter.

Bernd
Posts: 1074
Joined: Mon Jun 23, 2008 9:29 pm

Re: diffusion problem

Post by Bernd » Wed Apr 06, 2011 10:54 pm

Well - I would not call it a trick, because when it comes to discretize the diffusion equation, one has to make a choice for the averaging scheme applied, and the one we use is not better or worse than another one like the arithmetic or geometric average!

We have chosen this scheme not only to remove the problem of the unknown gradient in the boundary cells of interfaces, but - what is much more important - to remove unphysical fluxes into stoichiometric phases without solubility and to allow defining a stabilty criterion for time-stepping for the explicit diffusion solver, which would not be possible with arithmetic averaging!

Post Reply