fvSchemes 到底要不要 corrected?一个惨痛教训 OpenFOAM 的 fvSchemes 字典定义了离散方法,其中 laplacianSchemes 和 snGradSchemes 都要填写一个和网格正交性相关的字段,具体介绍用户手册里写得很详细了,OpenFOAM v9 User Guide。这字段有以下几种取值: default corrected; default limited corrected 0.33; default limited corrected 0.5; default orthogonal; default uncorrected; 继续阅读“fvSchemes 到底要不要 corrected?一个惨痛教训”
OpenFOAM 拉格朗日库 solidParticle 简介及应用 拉格朗日法常用来求解颗粒、气泡等离散介质在连续介质中的运动,OpenFOAM 提供了基础的拉格朗日法类库,可满足一些常见需求,可实现流体-颗粒双向耦合加上颗粒之间的相互作用,它提供了独特的MPPIC(Multiphase Particles in Cell)算法,可以在计算精度和代价之间取得平衡。但在处理不规则颗粒方面还缺少高效的方案,无法和专业的DEM(Discrete Element Method)软件媲美。 solidParticle 库是一个简单的示例,结构简单,抽象层次较低,容易理解,适合作为初学拉格朗日方法的切入点。solidParticle 库并未应用于任何原生的 OpenFOAM 求解器,一个原因是 solidParticle 的功能可通过 MPPIC 简化后实现,OpenFOAM 原生的求解器更注重通用性,因而提供了 MPPICFoam 和 MPPICInterFoam(仅ESI)。 solidParticle 的这些特点使得二次开发较 MPPIC 容易,本文的目标是在水气两相流求解器 interFoam 中的适配 solidParticle 库,求解水气两相流的同时求解颗粒运动。 继续阅读“OpenFOAM 拉格朗日库 solidParticle 简介及应用”
OpenFOAM 一键安装,国内镜像站来了 openfoam.org 提供了众多版本 OpenFOAM 的 deb 包,可以通过 apt-get 或 apt 命令安装,可惜从国内访问太慢了,基本无法使用。经过一通分析,小编发现 openfoam.org 的apt 源竟然连内容分发网络(CDN)都没用,就一个 IP 在裸奔。源站所有内容加起来有40G,涵盖了十几个版本的Ubuntu,每个Ubuntu版本都有若干个OpenFOAM版本的64位和32位安装包。我相信 OpenFOAM 基金会不是太穷,而是为了兼容老版本的 apt-get 才没有使用 CDN。为了方便国内用户,小编趁着双11优惠,买了一台云服务器,在中国境内搭建了openfoam apt 源的镜像站,加速国内用户访问。下面我介绍一下使用方法。 第一步,添加openfoam.org的官方公钥 sudo sh -c "wget -O - https://dl.openfoam.org/gpg.key | apt-key add -"Code language: JavaScript (javascript) 公钥用于验证软件包的签名,你可以不信任我,但你应该信任openfoam.org,这就是签名的作用。 第二步,把我的镜像站地址添加到 source.list,命令如下 sudo add-apt-repository http://dl.cfdem.cn/ubuntuCode language: JavaScript (javascript) 继续阅读“OpenFOAM 一键安装,国内镜像站来了”
interFoam 网格动态加密算例 motorBike interFoam 网格动态加密算例 这个算例是 ESI 版的 OpenFOAM 自带的,笔者使用的版本是 OpenFOAM v1812。视频中,一块液体落在模型上,液体和气体的相界面周围的网格自动加密。
珍藏多年的空化实验视频,免费分享! 我很少分享自己领域内的研究成果,现在转行了,把以前博士期间珍藏多年的小视频免费分享给各位观众,这些视频几乎都来自于 YouTube,具体出处见水印。 先来一个基础的实验现象暖暖场,就是静水中单个空化泡溃灭,看点是冲击波。 继续阅读“珍藏多年的空化实验视频,免费分享!”
MPPICFoam 算例解析 MPPICFoam 是一个欧拉-拉格朗日耦合的求解器,MPPIC是 Multi-Phase, Particle-In-Cell 的缩写,属于拉格朗日法,用来描述颗粒的运动,可视为简化版的离散单元法(DEM)。采用该方法的求解器还有 MPPICInterFoam, 可解析两个欧拉相的界面,也就是在 interFoam 的基础上,用 MPPIC 法模拟颗粒运动。 MPPICFoam 包含四个算例 column、cyclone、Goldschmidt 和 injectionChannel,本文逐一展示。 继续阅读“MPPICFoam 算例解析”
你的求解器被OpenFOAM基金会删了!来看解决方案 小编长期使用 OpenFOAM 2.4 版本,维护一些祖传求解器,最近心血来潮体验了最新的 OpenFOAM 8.0 版本,发现 OpenFOAM 的求解器越来越少,大量求解器被整合,当然同时也推出一些全新的求解器。已多相流求解器为例,2.4版本一共有18个,8.0版本只有11个,对比如下: 继续阅读“你的求解器被OpenFOAM基金会删了!来看解决方案”
比女朋友更难找的是 libso 编译过程中,一个常见的报错是“找不到 lib*.so”,lib*.so 究竟为何物?该去哪里找呢? *.so 是共享目标(Shared Object)文件,是经过编译但未链接的二进制文件,lib*.so 是库(Library)的共享目标文件,以动态链接的方式被调用,因而也叫动态链接库文件。在 Linux 系统中,系统公用的动态链接库文件存储在 /lib 目录和 /usr/lib 目录,在其他位置编译好的库文件,一般也会在这两个目录创建软连接。一些专用的动态链接库文件,也可以存储在软件自己的目录,放在 /home 或 /opt 等位置。 继续阅读“比女朋友更难找的是 libso”
流体颗粒耦合(CFD-DEM)求解器 sediFoam 简介和安装步骤 sediFoam 是弗吉尼亚理工学院肖恒团队的杰作,在 OpenFOAM 的框架内实现了 CFD 和 DEM 耦合,在圈子里小有名气。OpenFOAM 自带的欧拉-拉格朗日耦合求解器,比如 MPPICFoam 和 DPMFoam 都无法解析颗粒间的相互作用,不适用于稠密颗粒流体两相流。稠密颗粒一般使用离散单元法求解,该方法可以考虑单个颗粒的形状、尺寸,解析颗粒之间的作用力,甚至是颗粒之间的化学反应。因而,在 OpenFOAM 中植入离散元求解器是个十分现实的需求。 继续阅读“流体颗粒耦合(CFD-DEM)求解器 sediFoam 简介和安装步骤”
2021年 waves2Foam 最新编译方法 waves2Foam 是 OpenFOAM 的第三方波浪工具箱,其中的 waveFoam 求解器广为人知。本专栏曾介绍在 Ubuntu 14.04 上编译 waves2Foam 的方法(常恭:安装 OpenFOAM + waves2foam),现在 Ubuntu 14.04 已经停止服务,waves2Foam 和 OpenFOAM 都也都发布了许多新版本,添加了很多新特性。有些朋友尝试在新版的 Ubuntu 和 OpenFOAM 上编译 waves2Foam 但遇到了些麻烦,向小编兴师问罪。小编利用下班时间,编译了目前最新版本的 wave2Foam r2141,操作系统也选了目前支持良好且较为稳定的 Ubuntu 18.04,OpenFOAM 选了 v1812,这一版本经历多次小修,小编使用的是 OpenFOAM-v1812.200417(Development Tags OpenFOAM-v1812.200417)。如果您不了解版本兼容性,请务必使用小编已经测试过的版本,不同版本的 Ubuntu、OpenFOAM 和 wave2Foam 很可能不兼容。 Windows 10 的 WSL 也更新到了 Ubuntu 18.04,本文介绍的方法理论上可以在 WSL 上编译,使用 Windows 的朋友可以试试。 继续阅读“2021年 waves2Foam 最新编译方法”