CFDPython是一套Jupyter Notebook教程,通过12个渐进步骤,用Python从零编写偏微分方程求解代码,帮助学习者理解计算流体力学(CFD)基础。
这个工具是什么
CFDPython,又称“12步到Navier-Stokes”,是学习计算流体力学(CFD)基础的实践模块,通过编写代码求解描述流体物理的基本偏微分方程。该模块源自Lorena Barba教授2009至2013年在波士顿大学机械工程系讲授的课程,2013年写成Jupyter Notebook,用于在阿根廷门多萨的为期两天的强化课程。它假设学习者仅具备基本编程知识(任何语言)以及偏微分方程和流体力学背景。步骤灵感来自Rio Yokota博士,课程经过多个学期完善。
核心能力
- 12个渐进步骤覆盖从一维到二维的偏微分方程求解,最终求解二维Navier-Stokes方程
- 包含三个附加笔记本:CFL条件、NumPy数组操作和Python函数定义
- 通过重新输入代码和绘图,练习代码复用并学习数值扩散、精度和收敛性
- 提供Binder在线交互环境,无需本地安装即可运行
科研中的典型用法
- 在常规大学课程中,用4到5周完成全部课程,作为CFD入门实践环节
- 作为强化教程,在2到3天内集中完成,适合有经验的学习者快速上手
- 用于自学,跟随每个课程的示例,在新建Jupyter Notebook中重新输入代码并做笔记
快速上手
通过Binder在线启动:点击README中的Binder徽章即可在浏览器中运行所有Notebook。本地使用需安装Jupyter Notebook、NumPy和Matplotlib,然后克隆仓库并打开lessons目录下的.ipynb文件。建议从“Quick Python Intro”开始,按顺序完成每个步骤,并重新输入代码以加深理解。
生态与相近工具
同领域还有《Computational Fluid Dynamics: The Basics with Applications》等教材,以及FEniCS、OpenFOAM等专业CFD软件。CFDPython侧重教学,从零实现求解器,适合理解基础;而OpenFOAM等适合实际工程仿真。若需系统学习CFD理论,可结合教材;若需快速求解工程问题,可选用成熟软件。
项目信息
- 仓库:barbagroup/CFDPython
- 星标:4,138 · 派生:1,326
- 主要语言:Jupyter Notebook
- 许可证:NOASSERTION
- 最近提交:2024-03-19
本文属于《学科研究工具知识库 · 工程与材料》第 3 篇(按 GitHub 星标排序)。收录标准:该学科公开可获取的开源研究工具,星标与活跃度为主要参考,不代表对其性能或适用性的背书;选型前请结合自身场景评估。

发表评论 取消回复