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

相关推荐
2501_9151063218 小时前
Swift 开发环境搭建指南:三条路径按目标对号入座
开发语言·vscode·ios·objective-c·个人开发·swift·敏捷流程
thinking_talk20 小时前
换一个 AI IDE,过去的数据还能继续用吗?
ide·ai ide·数据复用
Caster_Z20 小时前
IntelliJ IDEA 安装 Qoder CN (Formerly Lingma)
java·ide·intellij-idea
吃杠碰小鸡20 小时前
VsCode中使用Java
java·vscode
一嘴一个橘子21 小时前
idea 的 双击Shift 全局搜索
java·ide·intellij-idea
nvvas21 小时前
最新版 IntelliJ IDEA 全面介绍:面向现代 Java 开发者的智能 IDE
java·ide·intellij-idea
郭涤生1 天前
VScode回归ACM模式(古法编程)配置
linux·ide·vscode
敖行客 Allthinker1 天前
分布式远程研发团队,借助云 IDE 统一开发环境
ide·分布式
艾莉丝努力练剑1 天前
【AI大模型接入SDK】C++日志体系与spdlog封装的理论部分
开发语言·c++·ide·人工智能·学习·面试·trae
LabVIEW开发1 天前
LabVIEW图标编辑器文字模糊现象
ui·编辑器·labview·labview知识·labview功能·labview程序