平板边界层内的流速分布实验

(1) 代码

clc;clear;

Rg = 287; %气体常数(J/(kg·K))
g = 9.8; %重力加速度(m/s^2)
waterDensity = 1000; %水的密度(kg/m^3%对已知实验参数的输入
atmosphericPressure = input('请输入大气压:(Pa)');
temperature = input('请输入温度:(℃)');
KVC = input('请输入流体运动粘性系数:(10^-7m^2/s)'); %Kinematic viscosity coefficient
K = input('请输入风洞系数:');
gearFactor = input('请输入微压计所选的档位系数:');
inletVacuum = input('请输入风洞进口处真空度:(mmH2O)');
staticPressure0 = input('请输入流场静压:(mmC2H5OH)');

%第一截面实验数据输入
x10 = input('请输入第一截面距前缘的距离:(mm)');
y10 = input('请输入第一截面边界层内距离:(mm)');
micromanometerP10 = input('请输入第一截面用微压计测得的读数数据:(mmC2H5OH)');
transmitterP10 = input('请输入第一截面用压差变送器测得的读数数据:(Pa)'); %Differential pressure transmitter

%第二截面实验数据输入
x20 = input('请输入第二截面距前缘的距离:(mm)');
y20 = input('请输入第二截面边界层内距离的数据:(mm)');
micromanometerP20 = input('请输入第二截面用微压计测得的读数数据:(mmC2H5OH)');
transmitterP20 = input('请输入第二截面用压差变送器测得的读数数据:(Pa)');

%实验过程中通过计算出来的、不变的数据
airDensity = atmosphericPressure / (Rg * (273.15 + temperature)); %空气密度
staticPressure = atmosphericPressure - gearFactor * staticPressure0 * waterDensity * g * 0.001; %流场静压
x1 = x10 * 0.001;
y1 = y10 * 0.001;
x2 = x20 * 0.001;
y2 = y20 * 0.001;
velocityInf = sqrt((0.001 * (2 * K * g * waterDensity * inletVacuum)) / airDensity);
fprintf('=>风洞进口流速为:%.3f m/s\n',velocityInf);
micromanometerP1 = atmosphericPressure - micromanometerP10 * gearFactor * waterDensity * g * 0.001;
transmitterP1 = atmosphericPressure - transmitterP10;
micromanometerP2 = atmosphericPressure - micromanometerP20 * gearFactor * waterDensity * g * 0.001;
transmitterP2 = atmosphericPressure - transmitterP20;

%对第一截面数据进行处理
fprintf('>>>>>>>>>>**第一截面数据计算**<<<<<<<<<<\n');
Re1 = (velocityInf * x1) / (KVC * 1e-7);
fprintf('=>雷诺数 Re= %.3f\n',Re1);
fprintf('=>微压计实际读数计算出来的绝对压强:(Pa)\n');
disp(micromanometerP1);
micromanometerVelocity1 = zeros(1,length(micromanometerP1));
for i=1:length(micromanometerP1)
    micromanometerVelocity1(i) = sqrt(2 * (micromanometerP1(i) - staticPressure) / airDensity);
end
fprintf('=>用微压计测量的数据计算得到的边界层内的流速:(m/s)\n');
disp(micromanometerVelocity1);
transmitterVelocity1 = zeros(1,length(transmitterP1));
for i=1:length(transmitterP1)
    transmitterVelocity1(i) = sqrt(2 * (transmitterP1(i) - staticPressure) / airDensity);
end
fprintf('=>用压差变送器测量的数据计算得到的边界层内的流速:(m/s)\n');
disp(transmitterVelocity1);
micromanometerVelocityRatio1 = micromanometerVelocity1 / velocityInf;
fprintf('=>用微压计测量的数据计算得到的边界层内的速度比:\n');
disp(micromanometerVelocityRatio1);
transmitterVelocityRatio1 = transmitterVelocity1 / velocityInf;
fprintf('=>用压差变送器测量的数据计算得到的边界层内的速度比:\n');
disp(transmitterVelocityRatio1);

%对第二截面数据进行处理
fprintf('>>>>>>>>>>**第二截面数据计算**<<<<<<<<<<\n');
Re2 = (velocityInf * x2) / (KVC * 1e-7);
fprintf('=>雷诺数 Re= %.3f\n',Re2);
fprintf('=>微压计实际读数计算出来的绝对压强:(Pa)\n');
disp(micromanometerP2);
micromanometerVelocity2 = zeros(1,length(micromanometerP2));
for i = 1:length(micromanometerP2)
    micromanometerVelocity2(i) = sqrt(2 * (micromanometerP2(i) - staticPressure) / airDensity);
end
fprintf('=>用微压计测量的数据计算得到的边界层内的流速:(m/s)\n');
disp(micromanometerVelocity2);
transmitterVelocity2 = zeros(1,length(transmitterP2));
for i = 1:length(transmitterP2)
    transmitterVelocity2(i) = sqrt(2 * (transmitterP2(i) - staticPressure) / airDensity);
end
fprintf('=>用压差变送器测量的数据计算得到的边界层内的流速:(m/s)\n');
disp(transmitterVelocity2);
micromanometerVelocityRatio2 = micromanometerVelocity2 / velocityInf;
fprintf('=>用微压计测量的数据计算得到的边界层内的速度比:\n');
disp(micromanometerVelocityRatio2);
transmitterVelocityRatio2 = transmitterVelocity2 / velocityInf;
fprintf('=>用压差变送器测量的数据计算得到的边界层内的速度比:\n');
disp(transmitterVelocityRatio2);

%数据可视化
figure; %第一截面
hold on;grid on;
plot(micromanometerVelocityRatio1,y1,'p','markersize',10); %微压计测量所得数据点
plot(transmitterVelocityRatio1,y1,'*','markersize',10); %压差变送器测量所得数据点
micromanometerT1 = 0.5 : 0.01 : 0.95;
micromanometerU1 = spline(micromanometerVelocityRatio1,y1,micromanometerT1);
micromanometerBLT1 = spline(micromanometerVelocityRatio1,y1,0.93); %Boundary layer thickness
fprintf('=>用微压计测量得出的边界层厚度为:%.3f mm\n',micromanometerBLT1 * 1000);
plot(micromanometerT1,micromanometerU1,'-.','linewidth',2); %微压计测量拟合曲线。
transmitterT1 = 0.5 : 0.01 : 0.95;
transmitterU1 = spline(transmitterVelocityRatio1,y1,transmitterT1);
transmitterBLT1 = spline(transmitterVelocityRatio1,y1,0.93);
fprintf('=>用压差变送器测量得出的边界层厚度为:%.3f mm\n',transmitterBLT1 * 1000);
plot(transmitterT1,transmitterU1,'--','linewidth',2); %压差变送器测量拟合曲线

micromanometerY1 = 0 : 0.00001 : transmitterBLT1;
micromanometerX1 = ((3 * micromanometerY1 - (micromanometerY1.^3) / (transmitterBLT1^2))...
    / (2 * transmitterBLT1));
plot(micromanometerX1,micromanometerY1,'-'); %层流理论曲线

transmitterY1 = 0 : 0.00001 : transmitterBLT1;
transmitterX1 = (transmitterY1 / transmitterBLT1).^(1/7);
plot(transmitterX1,transmitterY1,'-'); %紊流理论曲线

title('第一截面边界层速度分布曲线');
xlabel('速度比');
ylabel('离平板壁面距离y(m)');
axis tight;
legend('微压计测量所得数据点','压差变送器测量所得数据点','微压计测量拟合曲线','压差变送器测量拟合曲线',...
    '层流理论曲线','紊流理论曲线','location','northwest');

figure; %第二截面
hold on;grid on;
plot(micromanometerVelocityRatio2,y2,'p','markersize',10); %微压计测量所得数据点
plot(transmitterVelocityRatio2,y2,'*','markersize',10); %压差变送器测量所得数据点
micromanometerT2 = 0.5 : 0.01 : 0.95;
micromanometerU2 = spline(micromanometerVelocityRatio2,y2,micromanometerT2);
micromanometerBLT2 = spline(micromanometerVelocityRatio2,y2,0.93);
fprintf('=>用微压计测量得出的边界层厚度为:%.3f mm\n',micromanometerBLT2 * 1000);
plot(micromanometerT2,micromanometerU2,'-.','linewidth',2); %微压计测量拟合曲线
transmitterT2 = 0.5 : 0.01 : 0.95;
transmitterU2 = spline(transmitterVelocityRatio2,y2,transmitterT2);
transmitterBLT2 = spline(transmitterVelocityRatio2,y2,0.93);
fprintf('=>用压差变送器测量得出的边界层厚度为:%.3f mm\n',transmitterBLT2 * 1000);
plot(transmitterT2,transmitterU2,'--','linewidth',2); %压差变送器测量拟合曲线

micromanometerY2 = 0:0.00001 : transmitterBLT2;
micromanometerX2 = ((3 * micromanometerY2 - (micromanometerY2.^3) / (transmitterBLT2^2)))...
    / (2*transmitterBLT2);
plot(micromanometerX2,micromanometerY2,'-'); %层流理论曲线

transmitterY2 = 0 : 0.00001 : transmitterBLT2;
transmitterX2 = (transmitterY2 / transmitterBLT2).^(1/7);
plot(transmitterX2,transmitterY2,'-'); %紊流理论曲线

title('第二截面边界层速度分布曲线');
xlabel('速度比');
ylabel('离平板壁面距离y(m)');
axis tight;
legend('微压计测量所得数据点','压差变送器测量所得数据点','微压计测量拟合曲线','压差变送器测量拟合曲线',...
    '层流理论曲线','紊流理论曲线','location','northwest');

%流态分析
fprintf('>>>>>>>>>>**流态分析**<<<<<<<<<<\n');
fprintf('一、对第一截面:\n');
fprintf('1.用雷诺数判定流态:\n');
if micromanometerBLT1 >= 3e6
    fprintf('=>(用微压计测量所得的数据分析)流动为紊流\n');
else
    fprintf('=>(用微压计测量所得的数据分析)流动为层流\n');
end
if transmitterBLT1 >= 3e6
    fprintf('=>(用压差变送器测量所得的数据分析)流动为紊流\n');
else
    fprintf('=>(用压差变送器测量所得的数据分析)流动为层流\n');
end
fprintf('2.用边界层厚度计算值与理论值比较判定流态:\n');
if abs(micromanometerBLT1 - 5 * sqrt((KVC * 1e-7 * x1) / velocityInf)) < 0.1
    fprintf('=>(用微压计测量所得的数据分析)流动为层流\n');
elseif abs(micromanometerBLT1 - 0.37 * x1 * ((KVC * 1e-7) / (velocityInf * x1))^0.2)<0.1
    fprintf('=>(用微压计测量所得的数据分析)流动为紊流\n');
else
    fprintf('=>测量值与理论值相差较大,无法判定流态!\n');
end
if abs(transmitterBLT1 - 5 * sqrt((KVC * 1e-7 * x1) / velocityInf)) < 0.1
    fprintf('=>(用微压计测量所得的数据分析)流动为层流\n');
elseif abs(transmitterBLT1 - 0.37 * x1 * ((KVC * 1e-7) / (velocityInf*x1))^0.2) < 0.1
    fprintf('=>(用微压计测量所得的数据分析)流动为紊流\n');
else
    fprintf('=>测量值与理论值相差较大,无法判定流态!\n');
end
fprintf('二、对第二截面:\n');
fprintf('1.用雷诺数判定流态:\n');
if micromanometerBLT2 >= 3e6
    fprintf('=>(用微压计测量所得的数据分析)流动为紊流\n');
else
    fprintf('=>(用微压计测量所得的数据分析)流动为层流\n');
end
if transmitterBLT2 >= 3e6
    fprintf('=>(用压差变送器测量所得的数据分析)流动为紊流\n');
else
    fprintf('=>(用压差变送器测量所得的数据分析)流动为层流\n');
end
fprintf('2.用边界层厚度计算值与理论值比较判定流态:\n');
if abs(micromanometerBLT2 - 5 * sqrt((KVC * 1e-7 * x2) / velocityInf)) < 0.1
    fprintf('=>(用微压计测量所得的数据分析)流动为层流\n');
elseif abs(micromanometerBLT2 - 0.37 * x2 * ((KVC * 1e-7) / (velocityInf * x2))^0.2) < 0.1
    fprintf('=>(用微压计测量所得的数据分析)流动为紊流\n');
else
    fprintf('=>测量值与理论值相差较大,无法判定流态!\n');
end
if abs(transmitterBLT2 - 5 * sqrt((KVC * 1e-7 * x2) / velocityInf)) < 0.1
    fprintf('=>(用微压计测量所得的数据分析)流动为层流\n');
elseif abs(transmitterBLT2 - 0.37 * x2 * ((KVC * 1e-7) / (velocityInf * x2))^0.2) < 0.1
    fprintf('=>(用微压计测量所得的数据分析)流动为紊流\n');
else
    fprintf('=>测量值与理论值相差较大,无法判定流态!\n');
end

(2) 运行结果

输入:
请输入大气压:(Pa)98700
请输入温度:()26
请输入流体运动粘性系数:(10^-7m^2/s)8.982
请输入风洞系数:1.08
请输入微压计所选的档位系数:0.2
请输入风洞进口处真空度:(mmH2O)22.8
请输入流场静压:(mmC2H5OH)118
请输入第一截面距前缘的距离:(mm)150
请输入第一截面边界层内距离:(mm)[0.45 1.45 2.45 3.45 4.45 5.45 6.45 6.95 7.45]
请输入第一截面用微压计测得的读数数据:(mmC2H5OH)[77.5 55 38.8 26 15 10.5 7.5 6.8 6.4]
请输入第一截面用压差变送器测得的读数数据:(Pa)[164.23 118.72 85.559 56.076 34.772 23.870 21.223 20.668 20.202]
请输入第二截面距前缘的距离:(mm)250
请输入第二截面边界层内距离的数据:(mm)[0.45 1.45 2.45 3.45 4.45 5.45 6.45 7.45 8.45 9.45]
请输入第二截面用微压计测得的读数数据:(mmC2H5OH)[83 64 51 39.8 29 21 14 11 9.8 8]
请输入第二截面用压差变送器测得的读数数据:(Pa)[173.85 129.31 104.47 79.882 55.702 40.633 28.892 22.750 19.701 18.167]
输出:
=>风洞进口流速为:20.490 m/s
>>>>>>>>>>**第一截面数据计算**<<<<<<<<<<
=>雷诺数 Re= 3421782.658
=>微压计实际读数计算出来的绝对压强:(Pa)
   1.0e+04 *15
    9.8548    9.8592    9.8624    9.8649    9.867169
    9.8679    9.8685    9.8687    9.8687
=>用微压计测量的数据计算得到的边界层内的流速:(m/s)
  列 15
   11.7516   14.6568   16.4336   17.7118   18.740869
   19.1458   19.4111   19.4725   19.5075
=>用压差变送器测量的数据计算得到的边界层内的流速:(m/s)
  列 15
   10.8004   13.9937   15.9222   17.4588   18.489869
   18.9958   19.1166   19.1418   19.1630
=>用微压计测量的数据计算得到的边界层内的速度比:
  列 15
    0.5735    0.7153    0.8020    0.8644    0.914669
    0.9344    0.9474    0.9504    0.9521
=>用压差变送器测量的数据计算得到的边界层内的速度比:
  列 15
    0.5271    0.6830    0.7771    0.8521    0.902469
    0.9271    0.9330    0.9342    0.9353
>>>>>>>>>>**第二截面数据计算**<<<<<<<<<<
=>雷诺数 Re= 5702971.096
=>微压计实际读数计算出来的绝对压强:(Pa)
   1.0e+04 *15
    9.8537    9.8575    9.8600    9.8622    9.8643610
    9.8659    9.8673    9.8678    9.8681    9.8684
=>用微压计测量的数据计算得到的边界层内的流速:(m/s)
  列 15
   10.9246   13.5696   15.1150   16.3295   17.4207610
   18.1868   18.8316   19.1013   19.2081   19.3672
=>用压差变送器测量的数据计算得到的边界层内的流速:(m/s)
  列 15
    9.9957   13.3192   14.8532   16.2294   17.4774610
   18.2120   18.7644   19.0470   19.1857   19.2551
=>用微压计测量的数据计算得到的边界层内的速度比:
  列 15
    0.5332    0.6623    0.7377    0.7970    0.8502610
    0.8876    0.9191    0.9322    0.9375    0.9452
=>用压差变送器测量的数据计算得到的边界层内的速度比:
  列 15
    0.4878    0.6500    0.7249    0.7921    0.8530610
    0.8888    0.9158    0.9296    0.9364    0.9398
=>用微压计测量得出的边界层厚度为:5.211 mm
=>用压差变送器测量得出的边界层厚度为:5.736 mm
=>用微压计测量得出的边界层厚度为:7.133 mm
=>用压差变送器测量得出的边界层厚度为:7.491 mm
>>>>>>>>>>**流态分析**<<<<<<<<<<
一、对第一截面:
1.用雷诺数判定流态:
=>(用微压计测量所得的数据分析)流动为层流
=>(用压差变送器测量所得的数据分析)流动为层流
2.用边界层厚度计算值与理论值比较判定流态:
=>(用微压计测量所得的数据分析)流动为层流
=>(用微压计测量所得的数据分析)流动为层流
二、对第二截面:
1.用雷诺数判定流态:
=>(用微压计测量所得的数据分析)流动为层流
=>(用压差变送器测量所得的数据分析)流动为层流
2.用边界层厚度计算值与理论值比较判定流态:
=>(用微压计测量所得的数据分析)流动为层流
=>(用微压计测量所得的数据分析)流动为层流

在这里插入图片描述
在这里插入图片描述


参 考 资 料 来 源 参考资料来源

  1. 《流体力学》.张鸣远.高等教育出版社.
  2. 《热与流体实验教程》.王小丹.孟倩.张可.吴青平.唐上朝.西安交通大学出版社.

源 码 作 者 : A i d e n   L e e 源码作者:Aiden\ Lee Aiden Lee

博 客 创 作 : A i d e n   L e e 博客创作:Aiden\ Lee Aiden Lee

特别声明:文章仅供学习参考,转载请注明出处,严禁盗用!

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值