zoukankan      html  css  js  c++  java
  • CFDEM中writeLiggghtsProps命令

    我们都知道,如果想要在计算中断后,重新开始计算需要用到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,即可解决问题。

  • 相关阅读:
    DS博客作业06--图
    DS博客作业05--树
    DS博客作业03--栈和队列
    DS博客作业02-线性表
    DS博客作业01--日期抽象数据类型设计与实现
    C语言博客作业06---结构体&文件
    C语言博客作业05---指针
    C语言博客作业04--数组
    DS博客作业08--课程总结
    DS博客作业07--查找
  • 原文地址:https://www.cnblogs.com/Xiwang-Sun/p/15188449.html
Copyright © 2011-2022 走看看