CFD监测计划

时间:2013-07-09 12:27:56

标签: c++ python linux

我进行了大量的计算流体动力学(CFD)计算。出于多种原因,我想编写一个程序来监视CFD求解器给出的日志文件的输出,并相应地调整其控制参数。我有一些想法,但想询问有关最佳方法的建议。

我的想法:

  • 可以不断运行程序并以固定的时间间隔或日志文件更改时导入收敛参数
  • 可以使用一些系统或平台特定的实用程序来监控CFD流程
  • CFD在同一台机器上并行运行,因此(可能)需要一种方法来控制并行进程(我正在使用的CFD代码是OpenFOAM,它使用OpenMPI来并行化其进程)

为了完整起见,我在Ubuntu 12.04上运行,并希望用C / C ++或Python编写程序。

非常感谢

1 个答案:

答案 0 :(得分:3)

如果是我,我会尝试将CFD代码更改为库而不是应用程序,然后我将它暴露给Python。然后我会编写一个Python脚本来调用库并获取结果,并根据需要进行迭代。如果CFD代码不需要很长时间来运行单次迭代,那么这将比反复启动CFD独立程序更有效。也许更重要的是,它将允许在CFD代码和主管之间交换丰富的数据,而不仅仅是文本文件。