基于matlab求Prandtl-Meyer膨胀波流场数值解

简介: 基于matlab求Prandtl-Meyer膨胀波流场数值解

✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。

🍎个人主页:Matlab科研工作室

🍊个人信条:格物致知。

更多Matlab仿真内容点击👇

智能优化算法  神经网络预测雷达通信 无线传感器

信号处理图像处理路径规划元胞自动机无人机 电力系统

⛄ 内容介绍

含有水蒸气的气流,经过快速膨胀,温度降低,水蒸气凝结放热,影响流场结构.这一点在Prandtl-Meyer膨胀波中尤为明显.为此,通过流场显示的方法,观察了不同来流湿度下,后台阶流所形成膨胀波中,凝结对流场结构的影响.发现随着来流湿度的增加,凝结区域中会产生一道由弱到强的凝结激波.而湿度过大时,又会在上游产生一道正激波,反而抑制了下游的凝结.同时通过数值模拟,与实验研究进行比较验证,结果基本一致.数值模拟还发现,一定来流条件下,凝 结流场出现自激振荡现象.

⛄ 部分代码

function [delta_x] = compute_step_size(Theta,i,y,M_angle)

% Anderson does not give much details about the computation of this step size so

% the following function is how I understood the technique. The obtained

% results are good so I believe this function works well.

tan_max_pos = 0;

tan_max_neg = 0;

for j = 1:401,  % We need to find the maximum value of both tangents, so we need to compute them in the whole vertical line

   tan_pos = abs(tan(Theta+M_angle(j,i)));

   tan_neg = abs(tan(Theta-M_angle(j,i)));

   if (tan_pos > tan_max_pos)

       tan_max_pos = tan_pos;

   end

   if (tan_neg > tan_max_neg)

       tan_max_neg = tan_neg;

   end

end

tan_max = max(tan_max_pos,tan_max_neg);

delta_y = y(2,i) - y(1,i);  % delta_y is constant along the same vertical line (i).

% The grid transformation geometry imposes this. So it doesnt' matter to

% compute delta_y using y in 2,1 or using it in 21,20 for example, the

% result will be the same.

delta_x = 0.5*(delta_y/tan_max); % Where 0.5 is the Courant number

end

⛄ 运行结果

⛄ 参考文献

[1]曹?, 罗喜胜. Prandtl-Meyer膨胀波中水凝结的数值模拟[C]// 第十五届全国激波与激波管学术交流会. 2012.

[2]曹贇, 罗喜胜. Prandtl-Meyer膨胀波中凝结的初步研究[J].  2012.

⛄ 完整代码

❤️部分理论引用网络文献,若有侵权联系博主删除
❤️ 关注我领取海量matlab电子书和数学建模资料


相关文章
|
算法
MATlAB运用——数值积分
MATlAB运用——数值积分
183 0
|
1月前
|
算法 C++ Windows
基于离散差分法的复杂微分方程组求解matlab数值仿真
本程序使用离散差分法求解复杂微分方程组,将连续微分方程转化为差分方程,采用一阶显式时间格式和一阶偏心空间格式。经MATLAB2022a测试验证有效。
|
2月前
|
算法 C++ Windows
基于离散差分法的复杂微分方程组求解matlab数值仿真
本程序基于离散差分法求解复杂微分方程组,将连续微分方程转化为差分方程,采用一阶显式时间格式和一阶偏心空间格式。在MATLAB2022a上测试通过,展示了运行结果。
|
存储
专题一MATLAB基础知识——1.2数值数据
专题一MATLAB基础知识——1.2数值数据
140 0
MATLAB快速入门(一):数值数据和字符串
MATLAB快速入门(一):数值数据和字符串
80 0
|
算法
基于实时迭代的数值鲁棒NMPC双模稳定预测模型(Matlab代码实现)
基于实时迭代的数值鲁棒NMPC双模稳定预测模型(Matlab代码实现)
153 0
|
数据采集 监控 定位技术
【状态估计】基于增强数值稳定性的无迹卡尔曼滤波多机电力系统动态状态估计(Matlab代码实现)
【状态估计】基于增强数值稳定性的无迹卡尔曼滤波多机电力系统动态状态估计(Matlab代码实现)
122 0
|
存储 人工智能 NoSQL
MATLAB 之 数值数据,矩阵的表示和变量及其操作
MATLAB 数据类型较为丰富,既有数值型、字符串等基本数据类型,又有结构(Structure)、单元(Cell)等复杂的数据类型。 在 MATLAB 中,没有专门的逻辑型数据,而以数值 1 (非零)表示真,以数值 0 表示假。 MATLAB 各种数据类型都以矩阵形式存在,所以矩阵是 MATLAB 最基本的数据对象形式。
|
计算机视觉
MATLAB数值运算(六)
MATLAB数值运算(六)
135 0

热门文章

最新文章