目录
1.理论推导
2.编程实现
1. 格划分
2.流场初始化
3.计算声速和特征值
4.根据Steger_Warming矢通量分裂计算守恒量的通量项
5.根据NND格式计算守恒量的通量项
6.计算min mod系数
7.迭代计算每个时间步的守恒量和原始量
8.根据每个时间步作图
9.迭代计算
3.计算结果及完整代码
3.1 计算结果
3.2完整代码
3.3 参考资料
1.理论推导
一维流动欧拉方程:
其中
其特征根为
空间离散构造迎风格式,引入
因此
时间离散构造一阶向前差分格式
按Steger_Warming矢通量分裂方法,通量项可写为
当
当
采用NND格式改写通量项,因此
其中
定义
2.编程实现
整体流程如下:
1. 格划分
跟所有求解方法相同,第一步先初始化 格, 格尺寸和时间步长的大小会影响收敛性,需要根据Courant数来约束。
2.流场初始化
初始化我们需要的常数、守恒变量和原始变量。
3.计算声速和特征值
4.根据Steger_Warming矢通量分裂计算守恒量的通量项
5.根据NND格式计算守恒量的通量项
6.计算min mod系数
7.迭代计算每个时间步的守恒量和原始量
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!