使用OpenFOAM軟件進(jìn)行流體力學(xué)仿真計(jì)算
本文介紹如何使用E-HPC集群運(yùn)行OpenFOAM進(jìn)行流體力學(xué)仿真計(jì)算。
背景信息
OpenFOAM(Open Source Field Operation and Manipulation)是對(duì)連續(xù)介質(zhì)力學(xué)問(wèn)題進(jìn)行數(shù)值計(jì)算的軟件。可進(jìn)行數(shù)據(jù)預(yù)處理、后處理和自定義求解器,常用于計(jì)算流體力學(xué)領(lǐng)域。更多信息,請(qǐng)參見(jiàn)OpenFOAM官網(wǎng)。
本文利用OpenFOAM中的simpleFoam求解器計(jì)算摩托車外流場(chǎng),算例路徑為$FOAM_TUTORIALS/incompressible/simpleFoam/motorBike/
。
準(zhǔn)備工作
創(chuàng)建E-HPC集群。具體操作,請(qǐng)參見(jiàn)使用向?qū)?chuàng)建集群。
配置集群時(shí),軟硬件參數(shù)配置如下:
參數(shù)
說(shuō)明
硬件參數(shù)
部署方式為標(biāo)準(zhǔn),包含2個(gè)管控節(jié)點(diǎn),1個(gè)計(jì)算節(jié)點(diǎn)和1個(gè)登錄節(jié)點(diǎn),均采用ecs.c7.large實(shí)例規(guī)格,配置為2 vCPU,4 GiB內(nèi)存,Ice Lake處理器,2.7 GHz。
軟件參數(shù)
鏡像選擇CentOS 7.6公共鏡像,調(diào)度器選擇pbs。
創(chuàng)建集群用戶。具體操作,請(qǐng)參見(jiàn)創(chuàng)建用戶。
集群用戶用于登錄集群,進(jìn)行編譯軟件、提交作業(yè)等操作。本文創(chuàng)建的用戶示例如下:
用戶名:foamtest
用戶組:sudo權(quán)限組
安裝OpenFOAM軟件。具體操作,請(qǐng)參見(jiàn)安裝軟件。
需安裝的軟件如下:
openfoam-openmpi,版本為5.0。
openmpi,版本為1.10.7。
步驟一:連接集群
選擇以下一種方式連接集群。本文使用的用戶名為foamtest,連接集群后會(huì)默認(rèn)登錄到/home/foamtest
。
通過(guò)客戶端
該方式僅支持使用PBS調(diào)度器的集群。操作前,請(qǐng)確保您已下載安裝E-HPC客戶端,且已配置客戶端所需環(huán)境。具體操作,請(qǐng)參見(jiàn)配置客戶端所需環(huán)境。
打開(kāi)并登錄E-HPC客戶端。
在客戶端左側(cè)導(dǎo)航欄,單擊會(huì)話管理。
在會(huì)話管理頁(yè)面的右上角,單擊terminal,打開(kāi)Terminal窗口。
通過(guò)控制臺(tái)
在頂部菜單欄左上角處,選擇地域。
在左側(cè)導(dǎo)航欄,單擊集群。
在集群頁(yè)面,找到目標(biāo)集群,單擊遠(yuǎn)程連接。
在遠(yuǎn)程連接頁(yè)面,輸入集群用戶名、登錄密碼和端口,單擊ssh連接。
步驟二:運(yùn)行算例
設(shè)置環(huán)境變量。
export MODULEPATH=/opt/ehpcmodulefiles/ module load openfoam-openmpi/5.0 module load openmpi/1.10.7
準(zhǔn)備算例文件。
mkdir /home/foamtest/motorBike cp -r /opt/OpenFOAM/OpenFOAM-5.0/tutorials/incompressible/simpleFoam/motorBike/* /home/foamtest/motorBike
說(shuō)明本文使用OpenFOAM中的simpleFoam求解器計(jì)算摩托車外流場(chǎng)作為示例,算例路徑為
$FOAM_TUTORIALS/incompressible/simpleFoam/motorBike/
。運(yùn)行算例。
cd /home/foamtest/motorBike source /opt/OpenFOAM/OpenFOAM-5.0/etc/bashrc ./Allrun
步驟三:查看結(jié)果
執(zhí)行以下命令,查看結(jié)果文件。
cat /home/foamtest/motorBike/log.blockMesh
預(yù)期返回如下: