欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 汽车 > 维修 > vscode利用ofExtensions插件可以调试单进程Openfoam,但是不能调试mpi多进程案例

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

2025/2/13 15:33:13 来源:https://blog.csdn.net/weixin_44162814/article/details/143979641  浏览:    关键词: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

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com