CaNS 求解不可压缩牛顿流体的流动

CaNS(Canonical Navier-Stokes)是一个用于流体流动的大规模并行数值模拟的代码。它的目标是解决任何不可压缩的牛顿流体的流动,这些流体可以从三维笛卡尔网格中基于 FFT 的二阶有限差分泊松方程的求解器中受益。在两个方向上,网格是规则的,求解器支持以下(homogeneous)边界条件的组合:

  • Neumann-Neumann
  • Dirichlet-Dirichlet
  • Neumann-Dirichlet
  • Periodic

在第三个领域方向,求解器更加灵活,因为它使用高斯消元法。在那里,网格也可以是不均匀的(例如,边界处的网格较细,中心处的网格较粗)。

CaNS 还允许选择 N-S 方程的扩散项的隐式时间离散化。这导致对每个速度分量的 Helmholtz 方程进行求解。由于也使用了基于 FFT 的求解器,因此上述压力边界条件的相同选项适用于速度,以防隐式扩散处于活动状态。

一些特点包括:

  • 混合 MPI/OpenMP 并行化
  • FFTW guru 接口用于计算一维变换的多维向量
  • 从输入文件中自动确定正确的变换类型(傅里叶、余弦、正弦等)
  • 2DECOMP&FFT 例程用于执行全局数据转置和数据 I/O
  • 只需更改输入文件即可模拟不同的 canonical flow
© 版权声明
THE END
喜欢就支持一下吧
点赞685 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容