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

相关推荐
secondyoung2 小时前
Git使用:Git使用问题及解决方法总结
windows·经验分享·git·vscode·gitee·github·gitcode
山峰哥8 小时前
SQL调优实战:从索引失效到性能飙升的破局之道
服务器·数据库·sql·性能优化·编辑器·深度优先
聂 可 以9 小时前
解决Pycharm中(Python)软件包下载速度很慢、甚至下载失败的问题
ide·python·pycharm
山峰哥20 小时前
数据库调优实战:索引策略与查询优化案例解析
服务器·数据库·sql·性能优化·编辑器
小付同学呀1 天前
Visual Studio 2026 正式版下载与安装详细教程!
ide·visual studio
念越1 天前
VS2022安装与第一个C程序编写教程
c++·vscode
文艺倾年1 天前
【源码精讲+简历包装】LeetcodeRunner—手搓调试器轮子(20W字-上)
java·jvm·人工智能·tomcat·编辑器·guava
加成BUFF1 天前
基于DeepSeek+Python开发软件并打包为exe(VSCode+Anaconda Prompt实操)
vscode·python·prompt·conda·anaconda
SiYuanFeng1 天前
vscode中markdown使用单个$显示公式($...$),preview页面里公式显示失败
ide·vscode·编辑器
御坂10101号1 天前
Total Recall:让 Claude 学会忘记,优化记忆管理
经验分享·vscode·开源·软件工程·ai编程