FiPy返回Fals的stokesCavity示例

2024-09-21 01:15:06 发布

您现在位置:Python中文网/ 问答频道 /正文

我尝试运行 stokesCavity示例,它使用lid驱动的边界条件来处理流。在代码末尾,将右上角单元格中的值与一些参考值进行比较

>>> print(numerix.allclose(pressure.globalValue[..., -1], 162.790867927)) #doctest: +NOT_PYAMGX_SOLVER
1
>>> print(numerix.allclose(xVelocity.globalValue[..., -1], 0.265072740929)) #doctest: +NOT_PYAMGX_SOLVER
1
>>> print(numerix.allclose(yVelocity.globalValue[..., -1], -0.150290488304)) #doctest: +NOT_PYAMGX_SOLVER
1

当我尝试运行这个示例时,我的输出是
错误
错误
错误
右上角单元格的实际值为129.2350.278627-0.166620(而不是162.790867927、0.265072740929和-0.150290488304)。有人知道我为什么会得到不同的价值观吗?我尝试过更改解算器(使用scipy、Trilinos和pysparse),但结果不会更改到第12位。速度剖面图看起来与它们的manual中所示的相似,但我仍然担心出现了问题。
我在Linux(python 2.7.14、fipy 3.2、pysparse 1.2.dev0、Trilinos 12.12、scipy 1.2.1)和Windows(python 2.7.15、fipy 3.1.3、scipy 1.1.0)上运行它


Tags: 示例错误notscipydoctestprintsolverpysparse
1条回答
网友
1楼 · 发布于 2024-09-21 01:15:06

当作为测试套件的一部分运行时,这个示例只进行5次扫描,并且数字检查是硬连接的。当您单独运行该示例时,它会进行300次扫描,并且解决方案的收敛性更好(或者至少不同)。这个例子没有什么问题,除了它是not written in a very robust way。谢谢你问这个问题;我们将尝试清理这个示例

相关问题 更多 >

    热门问题