我想计算通过gmsh导入到fipy中的任何网格的壳表面,类似于单元体积:
sum(mesh.cellVolumes)
到目前为止,我已经找到了外面的面孔:
f = FaceVariable(mesh=mesh,value=False, name='Aussen')
f.value[where(mesh.exteriorFaces == True)] = True
我想对faceVolumes(如果存在于fipy中的某个地方)求和,这是要走的路吗?
答案 0 :(得分:1)
应该这样做,
import numpy as np
from fipy import Grid2D
mesh = Grid2D(nx=2, ny=2)
np.sum(mesh._faceAreas[mesh.exteriorFaces.value])
以上似乎要求.value
才能正确完成面部区域的“拍摄”。
值得做mesh._
,然后在ipython中点击tab来查看所有可用于网格的额外属性。有很多隐藏的东西。
经过编辑,使代码成为完整的示例。