流体颗粒耦合(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 最新编译方法”

criu 工具让 Linux 进程休眠

休眠是操作系统常见的电源选项,可以保持应用程序的状态,并允许断掉电源再开机后恢复休眠前的状态。其原理是休眠时把计算机运行内存的数据全部转储到磁盘,唤醒时再读取磁盘中的内存镜像。

criu 工具可以让单个进程休眠,不依赖于操作系统的内核,完全在用户空间实现,它是 Checkpoint and Restore in Userspace 的缩写。它适用于以下场景:1)有些程序在运行过程中无法保存数据,必须一次性运行出最终结果,比如 lammps 和依赖它的 openfoam 求解器,为了防止计算过程意外终止,可以人为使用 criu 建立 checkpoint,已备不时之需;2)有些超算限制作业的最长运行时间,到达限制后必须终止,如有需要可以重新提交作业,这时可以使用 criu 建立 checkpoint,方便下次提交;3)云服务器的竞价实例,成本低廉,却有可能被随时终止,服务器收到终止指令后很快就会关机,留给用户处理的时间很短,这时也可以配置 criu 脚本,在计算资源被收回时保存计算状态,在计算资源恢复时,自动恢复计算。

criu 的简单用法如下。

继续阅读“criu 工具让 Linux 进程休眠”

PETSc 真的能让 OpenFOAM 如虎添翼吗?

PETSc 是美国阿贡国家实验室开发的轻便式可拓展科学计算工具箱(Portable Extensible Toolkit for Scientific computing),读作 pet-see。将 PETSc 植入 OpenFOAM 替换其原生线性求解器的研究早已有之,但实际效果比较有争议,有研究认为 PETSc 远胜于 OpenFOAM 的原生求解器,也有研究认为 PETSc 在很多情况下远逊于 OpenFOAM 的原生求解器,甚至会花费数倍时间。

这些争议引起了小编的关注,小编决定把玩一下这个大名鼎鼎的工具箱。OpenFOAM® v2006 将 PETSc 作为外部求解器整合进了 ThirdParty 包[1],写好了现成的编译脚本,还带有教程。

继续阅读“PETSc 真的能让 OpenFOAM 如虎添翼吗?”

在 IB 面前,万兆以太网就是渣渣

小编最近沉迷于 IDC 机房技术不能自拔,一边看着图吧垃圾佬搭建“家用”万兆以太网,一边畅想着某天能够有拥有自己的机房。正好在网上发现一份 HPC 咨询委员会的报告,这个报告测试了硬件和系统软件对 OpenFOAM 性能的影响,结果显示,10G 以太网根本不适合这种需要大量通信的应用,甚至 40G 都不够用,还是得上 IB。

Infini Band 是 OpenFOAM 的最佳伴侣
继续阅读“在 IB 面前,万兆以太网就是渣渣”

一主播上传 300 余个 OpenFOAM 视频,然而……

都说中国社会内卷,国外未必能好到哪里去。近日作者在某个不存在的视频网站采风,发现了惊人的一幕。

一个名叫 Theo Ong 的 up 主,过去一年就上传了 300 余个视频,内容硬核,随便一个视频就是在白纸上手推微分方程,比如这个,一定要点开看大图,小图完全无法传达出公式给人的恐惧感

继续阅读“一主播上传 300 余个 OpenFOAM 视频,然而……”

在超算机群上运行 OpenFOAM

有超算账号前,我觉得云计算简直就是 CFD 的未来,试用过超算后,发现这种需求10年前就被超算解决了。要论上手难度,各种平台的排序大概是:Windows 10 Subsystem for Linux > Linux物理机 > Windows+Linux 虚拟机 > 云计算服务器 > 超算。

举个例子好了,以下是 Compute Canada 官方支持的 OpenFOAM 版本,只需一条命令就可以配置好计算环境

继续阅读“在超算机群上运行 OpenFOAM”