推荐开源项目:CaNS —— 高性能流体模拟工具

推荐开源项目:CaNS —— 高性能流体模拟工具

CaNSA code for fast, massively-parallel direct numerical simulations (DNS) of canonical flows项目地址:https://gitcode.com/gh_mirrors/ca/CaNS

CaNS Logo

简介

CaNS(Canonical Navier-Stokes)是一个专为大规模并行数值模拟无粘性、牛顿流体流动设计的代码库。它利用快速傅里叶变换(FFT)解决3D笛卡尔网格上的二阶有限差分泊松方程,并支持多种边界条件组合:

  • 邻界邻界
  • 库仑-库仑
  • 邻界-库仑
  • 周期性

在第三个方向上,该求解器更为灵活,采用高斯消元法,网格可以是非均匀的。此外,CaNS还允许选择隐式时间离散化动量扩散项,可以选择完全隐式或仅沿最后一个域方向。

技术剖析

CaNS 使用了基于压力修正的第二阶有限差分数值方法,时间步进由一个低存储Runge-Kutta方案处理。可选地,在低雷诺数时,为了提高稳定性,可以以牺牲计算效率为代价对扩散项进行隐式处理。代码中集成了FFTW3或cuFFT库以实现CPU和GPU运算,并且支持混合MPI/OpenMP并行化。对于GPU加速,使用OpenACC指令,而多GPU硬件适应性分布式内存计算则依赖于cuDecomp库。

应用场景

这个强大的工具能模拟各种经典流体流动,如周期性或发展的通道、方形管道、三重周期性和盖板驱动的腔室。这些案例展示了其广泛的应用可能性,从基础研究到工程应用,都是值得尝试的领域。

项目特点

  1. 灵活性与兼容性:通过输入文件配置,可以轻松切换不同流动问题,无需大量修改代码。
  2. 高性能并行化:支持MPI和OpenMP并行,能够充分利用现代多核处理器和GPU资源。
  3. 高级优化:使用GPU加速和硬件适应性的多GPU分布策略,提高计算效率。
  4. 易扩展性:作为基础代码,易于添加复杂流体模拟方法,如虚拟域方法。
  5. 全面的文档:提供详尽的输入文件指南、编译说明和可视化教程,帮助新用户快速上手。

最新动态

CaNS 近期进行了重大更新,包括简化输入文件格式、增加新的输入参数以及移除某些选项以保持代码简洁。其中,版本2.0引入了重要的性能和稳定性的改进,以及硬件适应的多GPU并行化功能。

如果你正在寻找一个强大且灵活的流体动力学模拟工具,CaNS 是一个不可错过的选择。无论你是学生、研究员还是工程师,这个开源项目都能帮助你高效地探索流体力学的世界。

要了解更多详情,欢迎访问该项目的GitHub仓库,并查阅相关文档。

前往CaNS GitHub仓库

CaNSA code for fast, massively-parallel direct numerical simulations (DNS) of canonical flows项目地址:https://gitcode.com/gh_mirrors/ca/CaNS

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

劳治亮

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值