使用OpenFOAM软件进行流体力学仿真计算

本文介绍如何使用E-HPC集群运行OpenFOAM进行流体力学仿真计算。

背景信息

OpenFOAM(Open Source Field Operation and Manipulation)是对连续介质力学问题进行数值计算的软件。可进行数据预处理、后处理和自定义求解器,常用于计算流体力学领域。更多信息,请参见OpenFOAM官网

本文利用OpenFOAM中的simpleFoam求解器计算摩托车外流场,算例路径为$FOAM_TUTORIALS/incompressible/simpleFoam/motorBike/

准备工作

  1. 创建E-HPC集群。具体操作,请参见使用向导创建集群

    配置集群时,软硬件参数配置如下:

    参数

    说明

    硬件参数

    部署方式为标准,包含2个管控节点,1个计算节点和1个登录节点,均采用ecs.c7.large实例规格,配置为2 vCPU,4 GiB内存,Ice Lake处理器,2.7 GHz。

    软件参数

    镜像选择CentOS 7.6公共镜像,调度器选择pbs。

  2. 创建集群用户。具体操作,请参见创建用户

    集群用户用于登录集群,进行编译软件、提交作业等操作。本文创建的用户示例如下:

    • 用户名:foamtest

    • 用户组:sudo权限组

  3. 安装OpenFOAM软件。具体操作,请参见安装软件

    需安装的软件如下:

    • openfoam-openmpi,版本为5.0。

    • openmpi,版本为1.10.7。

步骤一:连接集群

选择以下一种方式连接集群。本文使用的用户名为foamtest,连接集群后会默认登录到/home/foamtest

  • 通过客户端

    该方式仅支持使用PBS调度器的集群。操作前,请确保您已下载安装E-HPC客户端,且已配置客户端所需环境。具体操作,请参见配置客户端所需环境

    1. 打开并登录E-HPC客户端。

    2. 在客户端左侧导航栏,单击会话管理

    3. 会话管理页面的右上角,单击terminal,打开Terminal窗口。

  • 通过控制台

    1. 登录弹性高性能计算控制台

    2. 在顶部菜单栏左上角处,选择地域。

    3. 在左侧导航栏,单击集群

    4. 集群页面,找到目标集群,单击远程连接

    5. 远程连接页面,输入集群用户名、登录密码和端口,单击ssh连接

步骤二:运行算例

  1. 设置环境变量。

    export MODULEPATH=/opt/ehpcmodulefiles/
    module load openfoam-openmpi/5.0
    module load openmpi/1.10.7
  2. 准备算例文件。

    mkdir /home/foamtest/motorBike
    cp -r /opt/OpenFOAM/OpenFOAM-5.0/tutorials/incompressible/simpleFoam/motorBike/* /home/foamtest/motorBike
    说明

    本文使用OpenFOAM中的simpleFoam求解器计算摩托车外流场作为示例,算例路径为$FOAM_TUTORIALS/incompressible/simpleFoam/motorBike/

  3. 运行算例。

    cd /home/foamtest/motorBike
    source /opt/OpenFOAM/OpenFOAM-5.0/etc/bashrc
    ./Allrun 

步骤三:查看结果

执行以下命令,查看结果文件。

cat /home/foamtest/motorBike/log.blockMesh

预期返回如下:

openform结果..png