OpenFOAM的安装与学习

目录

一、openfoam的安装

二、openfoam文件功能

1.‘0’文件

2.constant文件

3.system文件

4.Allrun脚本

三、openfoam案例学习

参考资料


一、openfoam的安装

       在ubuntu系统下利用apt方式安装OpenFOAM经常会遇到下载超慢的情况,有时候等一个下午未必都能下载下来,区区一百多兆的文件(其中OpenFOAM文件84M,paraView文件65M)搞得心情难受。

       我查阅资料后,可以直接从sourceforge网站下载deb安装包速度挺快的,分分钟就能下载下来。

1.先进入sourceforge网站https://jaist.dl.sourceforge.net/project/foam/foam/ubuntu/dists/groovy/main/binary-amd64/ icon-default.png?t=N6B9https://jaist.dl.sourceforge.net/project/foam/foam/ubuntu/dists/groovy/main/binary-amd64/

(注:安装后两个即可,保证日期一致)

2.将openfoam8与paraviewopenfoam56下载下来,默认情况下放到了download文件夹下

3.在download文件夹下启动终端,运行命令

sudo dpkg -i openfoam8_20201114_amd64.deb

此时会解压文件,不过最终会报错,提示依赖未安装

4.在终端运行命令

sudo apt -f -y install

此时系统会自动安装依赖,安装完毕后提示配置openfoam的环境变量。

5.先不忙着配置环境变量,可以先安装paraview,采用相同方式进行安装。

依次运行下面的命令

sudo dpkg -i paraviewopenfoam56_3-20201114_amd64
sudo apt-get -f -y install

安装完毕后可以配置环境变量。

6.运行命令

sudo gedit ~/.bashrc

在打开的文本文件第119行添加:

source /opt/openfoam8/etc/bashrc

添加完毕后如下图所示

7.此时可以另外再打开一个终端,输入命令

simpleFoam -help

若出现下面所示内容则表示OpenFOAM安装成功

二、openfoam文件功能

      openfoam文件不同于以往我们学过的代码文件,之前学过的代码我们都是在告诉计算机怎么做,而openfoam文件是如何描述你的流体模型。

具体教学视频可自行学习b站视频https://www.bilibili.com/video/BV1JC4y1t7B6?p=6&vd_source=0386bac16003ee6c171cfec1161e2963icon-default.png?t=N6B9https://www.bilibili.com/video/BV1JC4y1t7B6?p=6&vd_source=0386bac16003ee6c171cfec1161e2963如果大家想尽快有初步了解,可以看一下我自己的学习笔记,如下:

openfoam文件分为0文件、constant文件、system文件、Allrun脚本

1.‘0’文件

    0 文件夹中的文件被用来设置仿真的初始状态,包括场量(如速度、压力、温度等)以及边界条件。这些文件通常以不同的字段名称来命名,例如 U 表示速度场,p 表示压力场,T 表示温度场等。

(1)U: 该文件定义了速度场的初始条件。它包含了不同空间位置上的速度矢量值,用来指定流体在仿真开始时的初始速度分布。

(2)p: 这个文件包含了初始压力场的设置。它描述了流体在仿真开始时的初始压力分布。

(3)T: 如果仿真涉及温度场,这个文件定义了初始温度场分布。

(4)epsilon, k, nut : 这些文件用于涡动模型(如 k-epsilon 模型)的仿真,其中 epsilon 表示湍流耗散率,k 表示湍流动能,nut 表示湍流粘度。

2.constant文件

(1)polyMesh:文件包含了描述仿真领域的几何形状和网格信息的文件。

points(顶点) faces(多边形面) boundary(边界面)

owner(面单元) neighbor(面单元的相邻单元)

(2)transportProperties:这个文件定义了流体的物性参数,如密度、粘度、热导率等。它在流体力学方程的求解中起到重要作用。

(3)turbulenceProperties:如果仿真中涉及湍流模型,这个文件定义了湍流模型的参数,如k-epsilon模型、k-omega模型等。

3.system文件

(1)controldict:控制时间步长、仿真时间、输出间隔;

(2)fvSchemes:定义离散方程使用的数值格式;

(3)fvSolution:配置求解器设置(压力速度耦合算法等)

(4)decomposeParDict:配置网格生成以便并行计算;

(5)blockMeshDict:描述网格生成的设置;

4.Allrun脚本

       Allrun脚本通常是一个用于运行模拟案例的批处理脚本。它可以执行预处理、求解和后处理等步骤,以便轻松地运行整个模拟流程。下面是一个简单的"Allrun"脚本示例:

#!/bin/bash

# 设置 OpenFOAM 环境变量
source $HOME/OpenFOAM/OpenFOAM-vX.YY/etc/bashrc

# 进入案例文件夹
cd case_directory

# 预处理:生成网格、边界条件等
blockMesh

# 求解:运行求解器(以 simpleFoam 为例)
simpleFoam

# 后处理:生成报告、图表等
postProcess -func postProcessingFunction

# 将结果复制到其他文件夹
mkdir -p $HOME/OpenFOAM/results
cp -r ./postProcessing $HOME/OpenFOAM/results

# 完成
echo "模拟已完成!"

 其中,运行求解器常用有:

(1)icoFoam——瞬态、层流

(2)simpleFoam——稳态、湍流

(3)pisoFoam——瞬态、湍流

(4)pimpleFoam——瞬态、湍流

 

三、openfoam案例学习

1.你可以通过以下方式开始使用OpenFOAM,在终端上键入

mkdir -p $FOAM_RUN

在你的用户目录中创建新的目录<用户>→OpenFOAM→<用户-9>→run

2.在GitHub下载圆柱绕流的openfoam案例,链接如下

https://github.com/Veenxz/Veen_OpenFOAM_Cases/tree/main/VIV_cylindericon-default.png?t=N6B9https://github.com/Veenxz/Veen_OpenFOAM_Cases/tree/main/VIV_cylinder3.将VIV_cylinder文件夹放入刚才建立的run文件夹内,如图

4.在此目录下打开终端,输入

blockMesh
pimpleFoam
paraview

 即可求解一个圆柱绕流/卡门涡街的案例。

5.进入paraview页面之后,点击左上角file-open-OpenFOAM-<用户-8>-run-VIV_cylinder-system,进入如图界面

 在最下面File of type选择All Files选项,可以看到controldict文件,点击

 然后,点击OpenFOAMReader

 进入Paraview界面,选中左上部分controldict左边的小眼睛,如图

最后,点击Help下面的运行按键,即可看到圆柱绕流的仿真

 此次圆柱绕流案例完成。

参考资料

【1】利用deb包安装OpenFOAM8_理论_科普_代码&命令_OpenFOAM-仿真秀干货文章

【2】怎样查看模拟输出文件_哔哩哔哩_bilibili

【3】OpenFOAM V9在Ubuntu上的安装_openfoamv9安装_translator_的博客-CSDN博客

  • 2
    点赞
  • 39
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值