solid 里面没有网格
please try
sed -i s/tcsh/sh/g *Links
./removeSerialLinks fluid solid
./makeSerialLinks fluid solid
cd fluid
./Allclean
./Allrun
Solid face zone name outer-wall-zone not found. Please check your face zone definition.
这个是因为你的固体部分没有定义 solid face zone,而这个 face zone 将会与 fluid 部分的 face zone 对应。因此,你需要做:
- 在 solid 文件夹,用固体的边界名称 (与流体接触部分) 替换命令中的
yourpatchname
sed -i s/outer-wall$/yourpatchname/g setBatch
./createZones
- 在 fluid 文件夹,用流体的边界名称 (与固体接触部分) 替换
yourFluidWallName
sed -i s/wall$/yourFluidWallName/g setBatch
./createZones
- 再运行求解器
如何把信息贴出来呢
在你的命令行里,键入
tail log.fsiFoam -n 100
可以看到 log.fsiFoam 最后 100 行的信息,你可以修改 100 为你想要的数字。把出错的那几行粘贴到两个 ```
行之间。你可以参考 如何有效发帖
setBatch 文件第一行最后一个改成你相应的边界名,再在 solid 运行 ./createZones
solid 里的 setBatch 改为
faceSet outer-wall-zone new patchToFace YOURPATCH
quit
再运行 ./createZones
把那几个 log 文件删掉,就行
需要检查一下你的边界条件是否设置正确?网格大小、流速条件需满足 \dfrac{U\Delta t}{\Delta x} <1 。另外,流体固体参数也要正确才行。
初步已经可以算了,但是我想问题应该还很多
在 fluid-to-solid face interpolator 后出现的 Segmentation fault 的原因是:fluid 和 solid 两个面的 zone 没有建立好,重新做就可以了。