FiPy不能正常工作
问题描述:
在Mac(OS X 10.10.2和Python 2.7.6)上重新安装FiPy后,我尝试了文档中的一些示例,但它们不起作用。所以我测试FiPy使用内置的测试程序(从Python shell中键入“fipy.test()”),但经过良好的doctests一长串我得到这个日志,有两个故障: https://gist.github.com/alfrenardi/3b1ad5ff814077b18882FiPy不能正常工作
我试着在新的LTS Ubuntu安装上,但我也遇到了同样的问题。有什么解决方法?在我看来,这看起来像是FiPy模块的问题,而不是平台的问题。
答
看来测试存在一些问题。我用补丁向开发者提出了一个请求。我认为这个问题解决了。
答
两个测试,是失败
print type(numerix.array([1.0, 2.0]) * PhysicalField([1.0, 2.0])) is type(numerix.array(1))
和
C = CellVariable(mesh=mesh) * (A * B)
是边缘的情况下是不太可能与大多数FiPy使用情况干涉。警告如
Skipped 105 doctest examples because `gmsh` cannot be found on the $PATH
只有在您打算使用这些库提供的某些功能时才重要。
作为安装的非常基本的测试(超出测试套件的范围),请尝试运行1D diffusion example中列出的1D扩散问题,并检查是否在屏幕上绘制了明智的图形。
简单的例子就像你指出的工作(在Ubuntu上),但我必须解决一个静电3D问题,我不知道我是否必须使用这种“特殊边缘”情况,否则我不会。另外,我怀疑新安装后无法通过自己测试的模块不可靠。感谢您的回答,但如果在几周内我无法解决此问题,我会寻找另一个Python库。 – alfrenardi 2015-04-03 16:54:00
无论如何,你认为这两个测试失败是因为缺少库还是它是FiPy的问题?我在GitHub上使用了“主”版本,我想它应该是最稳定的。 – alfrenardi 2015-04-03 16:57:13
我不确定为什么在这种情况下没有进行调试就会失败。通常FiPy测试失败是因为底层库以某种方式变化,而FiPy开发者无法跟上。在我自己的研究中,我很少有一个版本的FiPy,所有的测试都通过了,只是因为跟上了底层依赖的变化的复杂性。 – wd15 2015-04-06 14:47:39