Hi,
It seems ndarray has a dot function now in numpy trunk, updated my numpy and
fipy crashes like
File "stratifiedmassflowrect.py", line 44, in <module>
mesh1 = Grid2D(dx=dy1strat, nx=nytot, dy=dz, ny=nztot)
File
"/usr/lib/python2.6/dist-packages/FiPy-2.1-py2.6.egg/fipy/meshes/numMesh/grid2D.py",
line 111, in __init__
Mesh2D.__init__(self, vertices, faces, cells)
File
"/usr/lib/python2.6/dist-packages/FiPy-2.1-py2.6.egg/fipy/meshes/numMesh/mesh.py",
line 68, in __init__
_CommonMesh.__init__(self)
File
"/usr/lib/python2.6/dist-packages/FiPy-2.1-py2.6.egg/fipy/meshes/common/mesh.py",
line 68, in __init__
self._calcGeometry()
File
"/usr/lib/python2.6/dist-packages/FiPy-2.1-py2.6.egg/fipy/meshes/numMesh/mesh.py",
line 469, in _calcGeometry
_CommonMesh._calcGeometry(self)
File
"/usr/lib/python2.6/dist-packages/FiPy-2.1-py2.6.egg/fipy/meshes/common/mesh.py",
line 613, in _calcGeometry
self._calcFaceNormals()
File
"/usr/lib/python2.6/dist-packages/FiPy-2.1-py2.6.egg/fipy/meshes/numMesh/mesh2D.py",
line 81, in _calcFaceNormals
orientation = 1 - 2 * (numerix.dot(self.faceNormals,
self.cellDistanceVectors) < 0)
File
"/usr/lib/python2.6/dist-packages/FiPy-2.1-py2.6.egg/fipy/tools/numerix.py",
line 841, in dot
return a2.dot(a1)
ValueError: matrices are not aligned
See
http://www.mail-archive.com/[email protected]/msg25306.html
http://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.dot.html#numpy.ndarray.dot
As a consequence, numerix dot should change. Something like
if hasattr(a1, 'dot') and not (type(a1) in
(type(MA.array(0)),type(array([0])))):
return a1.dot(a2)
elif hasattr(a2, 'rdot') and not (type(a2) in
(type(MA.array(0)),type(array([0])))):
return a2.rdot(a1)
elif hasattr(a2, 'dot') and not (type(a2) in
(type(MA.array(0)),type(array([0])))):
I suppose.
Greetings,
Benny