Hi Mike,

I don't get these warnings at all on the "develop: 08d564" branch nor on
"master: 6e897d". Can you tell me the version of FiPy that you're using?

Thanks.

On Fri, Aug 15, 2014 at 11:48 AM, Fellinger, Michael <[email protected]>
wrote:

>  Hello,
>
>  I have started using FiPy to do 3D phase-field simulations, and have
> encountered some warning messages when I use tensor coefficients in the 
> DiffusionTerm.
> Here is a simple test code using the identity matrix for the coefficient:
>
>
> -----------------------------------------------------------------------------------------------------------------
>  #!/usr/bin/python
>
>  from fipy import *
>
>  L = 1.0
> n = 10
> d = L / n
>
>  mesh = Grid3D(dx=d, dy=d, dz=d, nx=n, ny=n, nz=n)
>
>  x = mesh.cellCenters[0]
> y = mesh.cellCenters[1]
> z = mesh.cellCenters[2]
>
>  u = CellVariable(name="u", mesh=mesh)
>
>  u.setValue(0.0)
> radius = 0.25
> center = (0.5 * L, 0.5 * L, 0.5 * L)
> u.setValue(1.0, where=((x - center[0])**2 + (y - center[1])**2 + (z -
> center[2])**2 < radius**2))
>
>  u.constrain(0.0, mesh.facesLeft)
> u.constrain(0.0, mesh.facesRight)
> u.constrain(0.0, mesh.facesTop)
> u.constrain(0.0, mesh.facesBottom)
> u.constrain(0.0, mesh.facesFront)
> u.constrain(0.0, mesh.facesBack)
>
>  G = numerix.array(((1.0, 0.0, 0.0), (0.0, 1.0, 0.0), (0.0, 0.0, 1.0)))
>
>  eq = TransientTerm(var = u) == DiffusionTerm(coeff = G, var = u)
>
>  for i in range(3):
>    print i
>    eq.solve(var = u, dt = 0.01)
>
> -----------------------------------------------------------------------------------------------------------------------------------
>
>  The output from the code is
>
> -----------------------------------------------------------------------------------------------------------------------------------
>  0
> /home/wd15/.virtualenvs/default/lib/python2.7/dist-packages/fipy/variables/variable.py:1165:
> RuntimeWarning: invalid value encountered in divide
>   return self._BinaryOperatorVariable(lambda a,b: a/b, other)
> /home/wd15/.virtualenvs/default/lib/python2.7/dist-packages/fipy/variables/variable.py:1165:
> RuntimeWarning: divide by zero encountered in divide
>   return self._BinaryOperatorVariable(lambda a,b: a/b, other)
> 1
> 2
>
> -----------------------------------------------------------------------------------------------------------------------------------
>
>  From the output, you can see that the warnings occur only in the first
> step of the solution.  I ran a similar 2D version of the above code, and
> it does not produce any warnings. I am running this on Ubuntu 12.04 and
> installed FiPy using the "Ubuntu / Debian Installation" instructions from
> the FiPy manual.
>
>  I found that someone reported this problem in 2008 for a similar code,
> and it seems that the conclusion reached was that the warning is probably
> not an issue.  I solved some 3D PDEs with tensor coefficients using
> Mathematica and compared the results to FiPy output and the results are
> consistent. For these test problems the warnings do not seem to matter, but
> I wonder about more complicated cases. Have any problems with this been
> found since 2008?
>
>  Thanks,
> Mike Fellinger
>
> _______________________________________________
> fipy mailing list
> [email protected]
> http://www.ctcms.nist.gov/fipy
>   [ NIST internal ONLY: https://email.nist.gov/mailman/listinfo/fipy ]
>
>


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

Reply via email to