On May 16, 2013, at 1:23 PM, Daniel Wheeler <daniel.wheel...@gmail.com> wrote:
> I believe the correct diffusion coefficient across the face that approximates > a thin layer is > > D = Kc * (1 / (epsilon + (1 - epsilon) * D_ratio)) > > where > > D_ratio = Kc / 2 * (1 / K1 + 1 / K2) > > and > > epsilon = dx / cellSize Daniel and I talked about this and it's not quite right. I rederived it, considering the possibility of different cell sizes on either side of the boundary (which doesn't change much in the long run). What I get is that: Keff = Kcontact * Kavg / (Kavg + Kcontact * (1 - dx / cellSize)) where Kcontact = hc * cellSize and Kavg = K1 * K2 * cellSize / (K1 * dAP2 + K2 * dAP1) is the harmonic mean of K (dAP1 and dAP2 are the distances from the respective cell centers to the face center. In FiPy, I would write Kcontact = hc * mesh._cellDistances Kavg = Kcell.harmonicFaceValue K.setValue(Kcontact * Kavg / (Kavg + Kcontact * (1 - dx / mesh._cellDistances)), where=mesh.physicalFaces['thermal contact']) For most values of dx, this reduces to hc * mesh._cellDistances, although if hc * mesh._cellDistances is much larger than Kavg, then Keff starts to look like Kavg. _______________________________________________ fipy mailing list fipy@nist.gov http://www.ctcms.nist.gov/fipy [ NIST internal ONLY: https://email.nist.gov/mailman/listinfo/fipy ]