一维 Euler 守恒律
三行分别守恒质量、动量与总能量;数值通量只在网格界面交换这些量。
可压缩流 · 双曲守恒律
用 HLL 有限体积方法推进一维 Euler 方程,并把每个网格单元与精确 Riemann 解同步叠加。管内密度、x–t 波系、四变量剖面和守恒漂移一起更新。
物理教程
背景激波管先用隔膜分开两侧均匀气体。隔膜瞬间移除后,初值只在一个位置不连续,却会自组织成激波、接触间断与稀疏扇;三者分别传递压缩、物质界面和连续膨胀。
为什么值得理解Gary Sod 在 1978 年把这组初值确立为可压缩流代码的经典测试。这里还采用 Harten、Lax 与 van Leer 在 1983 年提出的两波近似通量思想,让数值解能与精确自相似 Riemann 解逐格比较。
先抓重点
三行分别守恒质量、动量与总能量;数值通量只在网格界面交换这些量。
比热比决定内能、压强与声速之间的关系,也改变三族特征波的速度。
当左右信号速度跨过零时,HLL 用一个平均中间态保持守恒;代价是接触间断比精确解更宽。
每一步都让最快特征波移动不到一个网格宽;提高分辨率会自动缩短时间步。
容易误解密度仍有跳变,所以中间那条线只是另一条小激波。
正确理解接触间断两侧压强与速度连续,只有密度和物质标签跳变;它以星区流速移动。
容易误解图上的激波跨越多个网格,所以真实无黏激波也有同样厚度。
正确理解Euler 激波在连续模型中是间断;这里的宽度主要来自一阶 HLL 数值耗散与有限分辨率。
选择 Sod 基准,保留精确解叠加并运行到自动暂停。
应该观察到: 左侧生成连续稀疏扇,中间接触间断随流移动,右侧激波最先前进;数值曲线贴近虚线精确解。切换到强激波,再逐步增加网格数并观察密度误差。
应该观察到: 激波速度与星区压强显著增大;更多网格让前沿变窄并降低整体误差,但时间步也随之缩短。比较对撞流与对称膨胀,并打开 x–t 特征线图。
应该观察到: 对撞把两侧波都变成激波;向外分离则生成两个稀疏扇,说明波型由星区压强相对初始压强决定。