On Wed, Dec 21, 2011 at 5:22 PM, James Snyder <[email protected]> wrote: > Hi - > > I've started experimenting with FiPy in order to get a better > understanding of some electrostatics problems, and have put together a > 3D model with Gmsh to try and estimate the current flow and field > potentials for an oblong pod in a rectangular tank with conductive > media and terminals extending into the surrounding fluid with fixed > potentials. I believe that the potentials are looking fairly > reasonable, however I seem to find some interesting discontinuities > when I try to make estimates of the current flux being emitted from > the terminals at the ends. At certain points (like the two run in the > example linked) for widths of 0.39 and 0.4 the sum all the face > gradients scaled by conductivity and dotted with the area projections > jumps suddenly from around 3.4e-3 to 5.6e-3 while following more > continuous variations above and below this level: > > https://gist.github.com/fad276821e31439e468e > > I expect that the current measurements will be quite sensitive to the > cell volumes, but the discontinuity mentioned seems to persist at 0.39 > vs 0.4 even with varying mesh resolution. Am I doing something > foolish or is there something simple I've missed here? Is the issue > related to something happening in Gmsh or FiPy? I see that the cell > count sometimes drops a bit at the transition, but if I include 0.38 > and 0.42 the discrepancy doesn't seem proportional to the drop.
Scratch this first question. I figured out what was happening. My boundary selection parameters were including the edge of the outer volume once I dropped below 0.40. I'd still like suggestions or responses for the remaining questions though, if possible. > > A few other questions: > If I want current density to be zero at certain boundaries normal to > that surface (insulators), what is the correct way to do that? I see > the new constrain approach, but I'm just setting the faceGrad value > vector to all zeros: "potential.faceGrad.constrain([[0], [0], > [0]],outer_edges)" but this isn't quite right. > > I tried using physical surface labels in 3D to label faces, and while > the labels came through, none none of the faces are actually tagged in > mesh.physicalFaces. I'm not that interested in tagging values, but > since one way to have "internal boundaries" is to carve out a section > of a mesh, then select specific faces of that internal hole, it would > be nice to use the physical labels. > > Is there an easy way to get values for a cross-sectional plane of cell > values on an unstructured mesh like the rectangular prism used in this > example? I see that I can do quite a bit of manipulation in Mayavi, > but it would be nice to have access to something like this without an > extensive custom routine or jumping out to a viewer/postprocessor. > > Also, Is there any likelihood or possibility that one might be able to > do parallel computation on unstructured meshes using Trillinos in the > future? I see that currently the parallel computation is only > supported for gridded meshes. > > Thanks in advance for any comments or suggestions. > > -jsnyder _______________________________________________ fipy mailing list [email protected] http://www.ctcms.nist.gov/fipy [NIST internal ONLY: https://email.nist.gov/mailman/listinfo/fipy]
