Palabos Summer School Note 1: Software Architecture

址:https://www.youtube.com/watchg_rGh3fS2Dg&list=PLmhFkUZSrlCc5k-kNvGSHBfbsodriv7qb

记录一下2020Palabos夏校复播的内容
Palabos历史

~2005: Palabos的前身:Vladvmir, OpenLB
2010: Palabos的第一个版本
2011:由日内瓦大学和FlowKit共同开发
2018:Numeca公司/Flowkit开发商业软件Omnis/LB
2018:日内瓦大学/hepia(Geneva School of Engineering, Architecture and Landscape——接管Palabos
当下Palabos已经在github开源,大家可以fork到自己的repository然后开发属于自己的代码。

1

Palabos内物理空间由规则相同的 格表示, 格由2D或3D矩阵表示,在Palabos里我们用Block而不是Matrix来表示。

2

Palabos内有3种Block

  • Block Lattice 储存分布函数和dynamics
  • Scalar Field 相当于一个标量值矩阵
  • Tensor Field 相当于一个向量或者张量值矩阵
3

通过Sparse Domain我们可以节省计算。

4
  • 每个循环被分为碰撞和迁移两部分,在实际的palabos应用中,二者合一(节省运算)。
  • 迁移过程不可自定义。
  • 碰撞过程较为一般化,可自定义。

不同碰撞模型的例子
BGK与线性平衡态:对流扩散方程
BGK与二阶平衡态:不可压缩流
BGK与三和四阶平衡态:可压缩流
Advanced collision models(recursive-regularized,central-momen,…)

5

碰撞步骤是局部运算在格点上,所以它才可被自定义化运行。
在Palabos里,每一个格点都存储了一个Dynamics类型的对象,它定义了这个格点的碰撞步骤算法,以及适用于其他算法,如计算密度,速度等。

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2020年9月7日
下一篇 2020年9月7日

相关推荐