我们都知道,如果想要在计算中断后,重新开始计算需要用到case/CFD/constant/liggghtsCommands文件,主要内容如下:
liggghtsCommandModels ( runLiggghts writeLiggghts ); runLiggghtsProps { preNo false; } writeLiggghtsProps { writeLast off; //是否只保存整个计算过程的最后一个restart文件 writeName "post/restart/liggghts.restartCFDEM"; //restart文件保存路径 overwrite off; //是否对restart文件进行覆盖 }
我们如果将writeLiggghtsProps中的overwrite设置为off的话,CFDEM将会按照CFD/system/controlDict中的writeIterval频率来保存每一个restart文件。
但是3.8版本中的这个命令出现了bug,overwrite设置为off之后,只有第一个restart文件时按照writeIterval频率来保存的,之后的restart文件则是按照controlDict中的deltaT来保存的,产生了大量的无效文件。
解决办法:
将文件/CFDEM/CFDEMcoupling-PUBLIC-5.x/src/lagrangian/cfdemParticle/cfdemCloud/cfdemCloud.C中的709行内容改为:
if(!writeTimePassed_ && mesh_.time().outputTime()) { writeTimePassed_=true; } else { writeTimePassed_=false; }
然后使用命令
cfdemCompCFDEMsrc
重新编译CFDEM,即可解决问题。