t技巧总结:~/myapp/OpenFOAM-7/blastfoam_2_0/tutorials/twoChargeDetonation案例对比,发现确实这个案例也没有固体文件夹和precice-config文件夹,只需要用到openfoam7与blastfoam2.0.0。(这个案例可以当做一个很好的爆炸案例的入门,爆轰案例也是根据这个修改的)。
一、爆轰案例的目录结构
如下所示,主要包括流体文件夹Fluid,固体文件夹Solid和流固耦合的配置文件precice-config.json以及分别运行Fluid和Solid的sh脚本,还有固体所依赖的linear_elasticity二进制可执行文件。
二、修改案例文件
方法如下:
删掉了Fluid/system/contorldict文件的最后三行so链接库文件,发现好像墙不会形变了,应该就是没有相互作用了。
但是还存在着那个墙,下面准备把墙删除。
重要思路:后来想着只用保留fluid文件夹,这里用不到固体,所以只复制了Fluid文件夹删除了precice-config.json文件的最后三行so链接库文件然后就作为了一个独立的爆炸的项目。
然后得到的Fluid的爆炸案例如下,该案例实现的就是一个大矩形的爆炸,但是里面目前还有一个墙,需要删除掉
通过修改blockmeshdict文件中的blocks将之前由于墙壁分成的6个小矩形块重新写成了一个大矩形,然后再将boundry之前分的面现在删除部分在修改一下,只用定义大矩形的6个面的条件即可。(这一部分和blastfoam的twoChargeDetonation基本一模一样,也可以参考这个案例)
删除掉了墙,但是运行结果也变得怪异了,看不出爆炸点了。然后运行展示也是很乱,出乎意料的错误。
通过与~/myapp/OpenFOAM-7/blastfoam_2_0/tutorials/twoChargeDetonation案例对比,发现确实这个案例也没有固体文件夹和precice-config文件夹,只需要用到openfoam7与blastfoam2.0.0。(这个案例可以当做一个很好的爆炸案例的入门,爆轰案例也是根据这个修改的)。
再次修改:将 blockMeshdict中的blocks中的网格划分修改成 (80 40 1)然后就解决了上面的问题,数据正常也可以看到爆炸点了。
(80 40 1)//每个方向网格的数量(由simpleGrading决定如何划分非均匀网格)中的Z方向改成1也就是变成2维了。Z大于1就是三维的。这时候虽然看着是一个长方体,但是数据相当于2维表示不占内存。修改要点是Z =1,这样爆炸点Z=0就会显示在图形正面了。然后X,Y方向尽量大一些。
然后看了一下爆炸点也是正确的,然后已运行果然正常了。
最终效果如下: