On Mon, Apr 28, 2014 at 2:48 PM, Zebo LI <pkuliz...@gmail.com> wrote:
> Hi,
>
>      I am a student in UIUC and currently working on some phase field
> problem using Fipy. But I am stuck at the boundary treatment. What we need
> is the fixed normal flux at the boundary. For the simple case, if the medium
> is isotropic and the diffusivity is just a constant, it turns out to be a
> ordinary Neumann type B.C.: d(phi)/dx = v*phi (v is a constant). We used
> phi.faceGrad.constrain(v*phi.getFaceValue ,mesh.facesLeft), and it worked
> well. However, for a more complicated case, if the diffusivity is not a
> constant (Matrix), the boundary condition will be: D_11 * d(phi)/dx + D_12 *
> d(phi)/dy =v*phi, the previous method is no longer suitable, and I don't
> know how to deal with it.

The best approach to this is to set "D_11" and "D_12" to zero on the
boundary, and introduce an implicit source term with "v" as the
coefficient in the cells adjacent to the boundary. I can't really do
this without seeing the full set of equations though. If you can
supply those then maybe I could code something.

-- 
Daniel Wheeler
_______________________________________________
fipy mailing list
fipy@nist.gov
http://www.ctcms.nist.gov/fipy
  [ NIST internal ONLY: https://email.nist.gov/mailman/listinfo/fipy ]

Reply via email to