本系列改编自CFD Python,亦即12 steps to Navier-Stokes。
该系列是一个学习计算流体动力学基础的实用模块,通过编制计算机程序求解描述流体流动物理的基本偏微分方程。系列来自于波士顿大学机械工程系Lorena Barba教授2009年至2013年期间所教授课程的一部分(Barba教授后来搬到乔治华盛顿大学),项目地址:https://github.com/barbagroup/CFDPython。
原系列(CFD Python)采用Python作为程序描述语言,基于Python语言的易懂与易学,特别适合于课堂教学。本系列采用Julia语言对原程序代码进行改写,利用Julia语言的易学易懂,同时兼具高效计算的特性。
github上也有julia改写的CFD Python,项目地址https://github.com/Wallace-dyfq/CFD-Julia-12-steps--o-Navier-Stokes-Equations。然而Julia这几年版本更新太快,这个项目最后更新于四年前,示例代码中包含有大量新版本Julia废弃的语法,导致很多代码在新版本下没办法运行。这里对老代码进行了修订,所有代码在Julia1.5.2
版本上调试通过。
整个系列内容包括:
01 一维线性对流
02 一维非线性对流
03 计算稳定性与CFL条件
04 一维扩散
05 一维Burgers方程
06 计算效率及数组操作
07 二维线性对流
08 二维非线性对流
09 二维扩散
10 二维Burgers方程
11 二维拉普拉斯方程
12 二维泊松方程
13 二维方腔流动
14 二维通道流动
Julia是一种语法外观非常接近Python的计算机语言(并非J国的某明星),原有的Python程序代码稍加修改很容易改造为Julia代码(其实不加改造也可以直接在Julia中运行),同时Julia是一种面向科学计算而设计的语言,天生在数值计算方面具有优势。详细介绍可参阅Julia官方网站https://julialang.org/,也可参阅Julia中文文档https://docs.juliacn.com/latest/。
尝试本系列教程需要先安装Julia。打开网站https://julialang.org/downloads/,根据自己操作系统选择合适的Julia安装程序下载安装。
采用默认安装方式安装完毕后会在桌面上生成三色圆的Julia的快捷方式,打开后会进入Julia的REPL界面。如下图所示。
后续的一些程序代码中可能会使用到一些Julia非标准库,此时需要额外安装。如最常用的用于图形绘制的PyPlot库等。
安装这些非标库很简单,以PyPlot库安装为例,在Julia REPL界面中运行命令:
using Pkg
Pkg.add("PyPlot")
如下图所示。
根据网络状况的不同,所需要等待的时间也有较大差异。
安装完毕后在REPL界面中输入命令:
using PyPlot
若如下图所示无任何错误提示,则表示模块包安装成功。
可用于Julia的IDE很多,如可以选择官配的Juno(https://junolab.org/),JuliaPro(https://juliacomputing.com/products/juliapro),也可以使用VS Code自行配置,这方面的资料很容易在网络上获取得到。
本篇文章来源于微信公众号: CFD之道
评论前必须登录!
注册