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 ]