matlab灵敏度分析绘图——道路最大通行能力

1.问题:通过道路通行能力的影响因素,分析道路最大通行能力对各个参数的灵敏度分析

2.道路通行能力模型(包括汽车刹车距离模型)

N=1000./(c1+c2.*v+d0./v)        当v=根号下d0/c2时N取最大值

3.参数:

c1:人的反应时间(驾驶员影响因素)

c2:制动系数(车辆与道路影响因素)

d0:车辆安全距离与车长的和(由车辆安全问题产生的限制条件)

4.灵敏度分析:
 c1,c2,d0三个参数对最大道路通行能力的灵敏度分析

*:单位要注意换算
c1:人的反应时间 单位秒(s)
c2:车辆制动相关系数 单位毫小时^2每千米(mh^2/km)
d0:车身标准长度与车辆安全距离和 单位米(m)
N_max:道路最大通行能力 单位辆每小时(h^-1)

5.程序架构分析:

1.分别在主函数中调用三个影响参数的分析绘图函数,绘制三个灵敏度图

2.三个分析函数所要变化的参数设置为行向量,其余参数作为常数传入,通过计算函数获得最大道路通行能力的映射行向量,最后绘制最大的道路通行能力图

3.创建计算函数在三个参数函数调用,用于获得最大道路通行能力的行向量

6.源代码展示(含注释)

% 灵敏度分析:
% c1,c2,d0三个参数对最大道路通行能力的灵敏度分析
%c1:人的反应时间 单位秒(s)
%c2:车辆制动相关系数 单位毫小时^2每千米(mh^2/km)
%d0:车身标准长度与车辆安全距离和 单位米(m)
%N_max:道路最大通行能力 单位辆每小时(h^-1)
function Sensivity_Analysis(c1,c2,d0) %输入初始参数:c1=0.7(s);c2=0.01(mh^2/km);d0=150(m);
c1=c1/3600; %单位转为小时(h)
c2=c2*1.0e-3;   %单位转为小时^2每米(h^2/m)
c1_sens(c2,d0);
c2_sens(c1,d0);
d0_sens(c1,c2);
end

function c1_sens(c2,d0) %c1对N_max的灵敏度分析函数
c1=0.7:0.05:1.5;  %反应速度范围考虑
N1_max=Calculation(c1./3600,c2,d0);  %c1单位转换为h
figure(1)
 plot(c1,N1_max);
 title('c1(人反应速度)对N_max(最大道路通行能力)灵敏度图形')
 xlabel('c1(s)')
 ylabel('N_max(h^-1)')
end

function c2_sens(c1,d0)   %c2对N_max的灵敏度分析函数
c2=0.005:0.001:0.015;   
N2_max=Calculation(c1,c2.*1.0e-3,d0);
figure(2)
plot(c2,N2_max)
title('c2(车辆制动系数)对N_max(最大道路通行能力)灵敏度图形')
 xlabel('c2(mh^2/km)')
 ylabel('N_max(h^-1)')
end

function d0_sens(c1,c2)   %d0对N_max的灵敏度分析函数
d0=103:1:203;
N3_max=Calculation(c1,c2,d0);
figure(3)
plot(d0,N3_max)
title('d0(车辆长度与安全距离和)对N_max(最大道路通行能力)灵敏度图形')
 xlabel('d0(m)')
 ylabel('N_max(h^-1)')
end

function Nmax=Calculation(c1,c2,d0)
v=power(d0./c2,0.5);
Nmax=1000./(c1+c2.*v+d0./v);
end

7.绘图结果:

matlab灵敏度分析绘图——道路最大通行能力_第1张图片

Nmax=1000/(c1+c2*v+d0/v)

当速度v=根号下d0/c2时,有最大道路通行能力

该情况下,d0增大,同样Nmax减小,且与根号下d0线性相关

 matlab灵敏度分析绘图——道路最大通行能力_第2张图片

Nmax=1000/(c1+c2*v+d0/v)

当速度v=根号下d0/c2时,有最大道路通行能力

该情况下,c2增大,v减小,c2增大,c2*v增大,Nmax减小,且与根号c2线性相关

matlab灵敏度分析绘图——道路最大通行能力_第3张图片

Nmax=1000/(c1+c2*v+d0/v)

当速度v=根号下d0/c2时,有最大道路通行能力

该情况下,c1增大,Nmax减小,且为线性相关

 

你可能感兴趣的:(matlab)