scalarIOList AUTO_WRITE 没有自动写文件
-
感谢管理员,
这段代码是在一个函数里面写的,每一步演化这个函数都被调用一次。如果我在后面加一句df.write()就可以写了,但是这样会每一步都写一个时间目录,而不是由controlDict里面的参数控制。
这个问题可以由下面这段完整简单的代码重现,
#include "fvCFD.H" #include "scalarIOList.H" int main(int argc, char *argv[]) { #include "setRootCase.H" #include "createTime.H" #include "createMesh.H" scalarIOList df ( IOobject ( "DF", runTime.timeName(), mesh, IOobject::NO_READ, IOobject::AUTO_WRITE ) ); while(runTime.run()) { runTime++; df = df + 1; } // df.write(); return 0; }
system/controlDict 相关设置是,
startFrom startTime; startTime 0; stopAt endTime; endTime 0.5; deltaT 0.001; writeControl timeStep; writeInterval 10;
这个拟solver跑起来,并不会每10步输出一个时间目录底下带一个DF文件。