当前位置: 首页 > article >正文

vscode利用ofExtensions插件可以调试单进程Openfoam,但是不能调试mpi多进程案例

问题:

准备调试流固耦合案例,包括流体和固体的,但是用ofextensions插件。但是流体的话使用的是域分解方法,将大的单元分成了小的单元用mpi并行处理,里面的program必须输入"/usr/bin/mpirun",  // 这里改为使用 mpirun 来启动并行计算,但是这样不能启动断点,直接就执行完了。搜了一下必须将program里面写求解器的路径"/home/user/OpenFOAM/user-7/platforms/linux64GccDPInt32Opt/bin/blastFoam",  才能正常加断点调试

目前mpirun多进程调试中launch.json中 "program": "/usr/bin/mpirun"这样无法加入断点(表现为加了但是灰色的,按F5直接执行完了)

//多进程

{
  "version": "0.2.0",
  "configurations": [
    {
      "name": "ofextension: debug solver",
      "type": "cppdbg",
      "request": "launch",
      "program": "/usr/bin/mpirun",  // 这里改为使用 mpirun 来启动并行计算
      "args": [
        "-np", "4",                     // 设置并行计算的进程数
        "/home/user/OpenFOAM/user-7/platforms/linux64GccDPInt32Opt/bin/blastFoam",  // 设置 blastFoam 求解器路径
        "-parallel",                     // 开启并行计算
        "-case", "Fluid/"                // 设置 case 路径
      ],
      "stopAtEntry": true,
      "cwd": "/home/user/jie/detonationTask/jie_pbf3/alldata_5c4/true_5c4_Z_change2.cp",  // 设置工作目录
      "environment": [],
      "externalConsole": false,
      "MIMode": "gdb",
      "setupCommands": [
        {
          "description": "Enable pretty-printing for gdb",
          "text": "-enable-pretty-printing",
          "ignoreFailures": true
        }
      ],
      "preLaunchTask": "ofextension: debug solver",
      "miDebuggerPath": "${workspaceFolder}/.vscode/of-gdb.sh"
    }
  ]
}

然后在我的这个流固耦合案例中,取消decomposepar划分网格又会报错浮点异常
   

解决方法:

流固耦合的方法目前没有找到

次选的方法:

去掉Fluid/system/controldict里面最后三行的利用precice耦合的代码,单独运行流体再去掉decomposepar(单独运行流体不会报错浮点数异常)调试流体了。

  新的进展:作者发布的并行调试连接:

OpenFOAM并行调试来了。_哔哩哔哩_bilibili


http://www.kler.cn/a/405449.html

相关文章:

  • “软件定义汽车”时代 | 产线海量数据刷写解决方案
  • 【Spark】【大数据技术基础】课程 实验七 Spark基础编程实验
  • Linux|进程程序替换
  • 【PGCCC】B+Tree 的并发优化 BLink-Tree
  • 解锁电商新境界:1688 API接口实战指南——商品详情与关键字搜索全攻略
  • 神经网络12-Time-Series Transformer (TST)模型
  • GoZero接口用postman调用字段类型不够并优化:如何解决数据库插入与更新失败问题
  • 用CAXA CAD电子图板导入图框、标题栏并导出pdf的方法
  • Dubbo HTTP接入之triple协议
  • 了解量子技术:一场科技革命的前夜
  • 【bug】使用transformers训练二分类任务时,训练损失异常大
  • HarmonyOs鸿蒙开发实战(21)=>组件间通信@ohos/liveeventbus
  • vue2 + iview(view-design) 中封装使用 vxe-table 处理表格渲染大量数据卡顿现象
  • 后端返回二进制流前端导出下载excel文件
  • Vue 项目中如何使用FullCalendar 时间段选择插件(类似会议室预定、课程表)
  • VMware虚拟机Ubuntu桥接模式突然连接不上网络解决办法
  • 类文件结构详解.上
  • Linux-Apache静态资源
  • 【SpringBoot】发送各种复杂格式的邮件
  • Centos 8, add repo