Hi everyone,

I am dealing with an irregular mesh done between a big circle and a small
polygone.

looks like I have memory issues when the polygone becomes more than a few
hundreds sides. Is that a typical limitation by fipy ? Is there a way to
deal with big polygonial shapes?

see error bellow, if you understand it ?

Traceback (most recent call last):
  File "growth.py", line 175, in <module>
    newphi = CellVariable(name = "solution variable",    mesh = mesh,
value=phi(mesh.getCellCenters()))
  File "/usr/lib/pymodules/python2.6/fipy/variables/cellVariable.py", line
197, in __call__
    nearestCellIDs = self.getMesh()._getNearestCellID(points)
  File "/usr/lib/pymodules/python2.6/fipy/meshes/common/mesh.py", line 772,
in _getNearestCellID
    return numerix.argmin(numerix.dot(tmp, tmp, axis = 0), axis=0)
  File "/usr/lib/pymodules/python2.6/fipy/tools/numerix.py", line 844, in
dot
    return sum(a1*a2, axis)
  File "/usr/lib/pymodules/python2.6/fipy/tools/numerix.py", line 241, in
sum
    return NUMERIX.sum(arr, axis)
  File "/usr/lib/python2.6/dist-packages/numpy/core/fromnumeric.py", line
1252, in sum
    return sum(axis, dtype, out)
MemoryError

thanks for your help !

Julien

PS I am trying to reproduce a typical DLA/saffman taylor problem. so I guess
the alternative would be to use a simple rectangular lattice, and to use a
phase parameter to determine what is solid and what is not (like in the
dendritic solidification example of the fipy help).
 but the issue then is to make some diffusion happen (for another field c)
only on the space where phi=0. is that possible ?

Reply via email to