1

是否可以连接两个(或更多)网格?例子:

import fipy
meshA = fipy.Grid2D(nx=5, ny=3)
meshB = fipy.Grid2D(nx=5, ny=6)
mesh = fipy.vstack(meshA, meshB)

1D 或 2D 网格也是如此。

中级问题:是否可以定义偏移量?

4

1 回答 1

1

绝对可以,而且你实际上必须做第二个才能做第一个:

mesh = meshA + (meshB + [[0], [3]])

它将meshB向上移动3个单位,然后将其连接到meshA。

文档字符串中对此进行了介绍Mesh.__add__,但遗憾的是,Sphinx 文档工具并未将其包含在输出中。我们需要明确地把它放在可以阅读的文档中。

请注意,生成的网格不再是网格,因此会损失一些效率。对于这种简单的情况,您显然最好只设置ny=9. 对于更复杂的情况,您可能想要执行以下操作:

mesh = fipy.Grid2D(nx=5, dy=[1,1,1,.5,.5,.5,.5,.5,.5])

如果您嫁接网格的原因是更改分辨率。

于 2015-09-21T21:11:35.677 回答