首页/文章/ 详情

绿色版 OpenFOAM 2412

精品
作者优秀平台推荐
详细信息
文章亮点
作者优秀
优秀教师/意见领袖/博士学历/特邀专家
平台推荐
内容稀缺
1月前浏览1200

前面说交叉编译ESI的OpenFOAM 2412版本,但编译过程不太顺利,老是出错,折腾了一番放弃了,以后有时间再弄了。好在ESI官方提供了OpenFOAM的交叉编译版本,我们可以直接在官方版本上进行处理就可以。

ESI官方的交叉编译版本基于MSYS2,其中所有的预置求解器都已经被编译成exe文件,可以将其弄出来处理成可以在Windows下独立运行的程序,这样套壳的时候就方便调用了。

其实只需要处理环境变量就可以了。另外官方没有编译MPI,所以如果想要使用并行计算的话,还得手动安装MPI。下面是处理过程。

1 下载安装

下载地址:https://develop.openfoam.com/Development/openfoam/-/wikis/precompiled/windows#native-windows

找到下图所示的链接下载。

安装过程非常简单,双击后一路next即可。需要注意,安装路径不允许有空格,否则后面会提示无法创建环境变量。

安装完毕后可以双击桌面上的快捷方式启动,如下图所示表示安装成功。

2 配置环境

  1. 拷贝应用程序。本机安装路径为:

    C:\ESI-OpenCFD\OpenFOAM\v2412\msys64\home\ofuser\OpenFOAM\OpenFOAM-v2412\platforms\win64MingwDPInt32Opt\bin

    也可以在安装路径中搜索icoFoam,所有的预编译程序都放在了这个文件夹下面。

       

    这里将bin文件夹拷贝到一个新建的文件夹中,如C:\OpenFOAM中。

       
  2. 拷贝文件夹C:\ESI-OpenCFD\OpenFOAM\v2412\msys64\home\ofuser\OpenFOAM\OpenFOAM-v2412C:\OpenFOAM

       
  3. C:\OpenFOAM下创建一个批处理文件,命名为of2412.bat,用文本编辑器打开,并输入以下内容

         @echo off
    chcp 65001
    set path=%path%;%~dp0bin
    set WM_PROJECT_DIR=%~dp0OpenFOAM-v2412
    cmd
  4. 从tutorials中拷贝一个测试文件(如cavity)用于测试,这里将其放到文件夹C:\OpenFOAM\run

       

    这一步不是必须的,只是用来测试。

  5. 运行of2412.bat,输入以下命令生成网格

         cd run\cavity
    blockMesh
       

    可以看到能够正常生成网格。

       
  6. 继续输入命令icoFoam可以进行计算,如下图所示。

       
  7. 可以输入命令echo > cavity.foam生成空文件,然后用paraView打开文件进行后处理

       

    压力分布如下图所示。

       

    速度分布如图所示。

       

3 测试并行计算

  1. ESI OpenFOAM中并没有编译MPI,若想要使用并行计算的话,需要手动安装MPI,这里可以使用微软的Microsoft MPI。

    下载地址:https://learn.microsoft.com/zh-cn/message-passing-interface/microsoft-mpi#ms-mpi-downloads

       

    下载后直接安装即可。安装完毕后将MPI安装路径下的bin文件夹拷贝到文件夹C:\OpenFOAM中,并修改文件夹名称为MS-MPI

       

    复 制后的文件夹中的内容如下图所示。

       
  2. 修改of2412.bat的内容,将MS-MPI的路径添加到环境变量path中

         @echo off
    chcp 65001
    set path=%~dp0MS-MPI;%~dp0bin;%path%;
    set WM_PROJECT_DIR=%~dp0OpenFOAM-v2412
    cmd
  3. 搜索并拷贝文件decomposeParDictsystem路径下。注意这里没法使用foamGetDict,只能手动复 制。修改其内容:

         numberOfSubdomains  4;
    method  hierarchical;
    coeffs
    {
        n   (221);
    }
  4. 测试并行计算。依次输入下面的命令

         blockMesh
    decomposePar
       

    执行完毕后如图所示。

       
  5. 执行下面的命令进行并行计算

         mpiexec -n 4 icoFoam
       

    执行完毕后如下图所示。

       
  6. 利用命令echo > cavity.foam创建一个空的后处理文件,可使用ParaView进行后处理。

       

    4 后期工作

  7. 当前的文件夹中的内容过于臃肿,有一大堆用不上的文件,可以删除掉。

       
  8. 环境变量。of2412.bat中设置的是临时变量,仅限于当前命令窗口中使用。想要全局使用的话,可以手工设置环境变量。包括:

    设置完毕后重启计算机以使环境变量生效。

    1. pathC:\OpenFOAM\bin
    2. pathC:\OpenFOAM\MS-MPI
    3. WM_PROJECT_DIRC:\OpenFOAM\OpenFOAM-v2412

这里需要注意的是,ESI提供的OpenFOAM交叉编译版本的:

  1. 没有OpenFOAM源代码。所以没有办法编译自己的求解器。
  2. OpenFOAM工具没有被编译。如foamGetDict之类的工具没有被编译成windows版本。
  3. 第三方工具全部都没有编译。如果需要的话,得自己去Linux系统下手工编译。

 

全部文件可以在这里下载:https://t.zsxq.com/yVYhB


(完)



来源:CFD之道

附件

免费链接.txt
SystemOpenFOAMADSUMParaView
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2025-04-29
最近编辑:1月前
CFD之道
博士 | 教师 探讨CFD职场生活,闲谈CFD里外
获赞 2622粉丝 11919文章 818课程 27
点赞
收藏
未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习计划 福利任务
下载APP
联系我们
帮助与反馈