一维黎曼c语言,一维黎曼问题数值解及计算程序.docx

本文档介绍了如何使用二阶精度MacCormack两步差分格式解决一维黎曼问题,提供了C语言和Fortran77的计算程序。通过人工黏性滤波方法处理激波附近的非物理振荡,展示了计算结果的高精度。计算结果显示,两种语言的程序得到了吻合的密度、速度和压力分布,成功捕捉激波并反映了一维Riemann问题的物理特性。
摘要由CSDN通过智能技术生成

实用标准文案

一维 Riemann 问题数值解与计算程序

一维 Riemann问题,即激波管问题,是一个典型的一维可压缩无黏气体动力

学问题,并有解析解。对它采用二阶精度MacCormack两步差分格式进行数值求

解。同时,为了初学者入门和练习方便

,这里给出了用

C

语言和

编写的

Fortran77

计算一维 Riemann问题的计算程序,供大家学习参考。

A-1 利用 MacCormack两步差分格式求解一维Riemann问题

1.一维 Riemann问题

一维 Riemann问题实际上就是激波管问题。激波管是一根两端封闭、内部充

满气体的直管,如图A.1 所示。在直

管中由一薄膜将激波管隔开, 在薄膜两

侧充有均匀理想气体(可以是同一种气

体,也可以是不同种气体) ,薄膜两侧

气体的压力、密度不同。当t0 时,

气体处于静止状态。当t0 时,薄膜

图 A.1 激波管问题示意图

瞬时突然破裂, 气体从高压端冲向低压端,同时在管内形成激波、 稀疏波和接触

间断等复杂波系。

2.基本方程组、初始条件和边界条件

设气体是理想气体。一维Riemann问题在数学上可以用一维可压缩无黏气体

Euler方程组来描述。在直角坐标系下量纲为一的一维Euler方程组为:

u

f

1

x 1

(A.1)

t

0,

x

u

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值