n=linspace(600,4000,100); %均分计算指令 ,600 最低转速 ,4000 最高转速 ,均分为 100 等分
r=0.367; 
i0=5.83; 
nt=0.85; 
G=3880*9.8; 
f=0.013; 
CDA=2.77; 
If=0.218; 
Iw1=1.798; 
Iw2=3.598; 
m=3880; 
L=3.2; 
a=1.947; 
hg=0.9; 
ig=[6.09,3.09,1.71,1.00]; %输入已知参数
ua1=0.377*r*n/i0/ig(1); 
ua2=0.377*r*n/i0/ig(2); 
ua3=0.377*r*n/i0/ig(3); 
ua4=0.377*r*n/i0/ig(4); %各转速各挡位下的速度
Tq=-19.313+295.27*(n/1000)-165.44*(n/1000).^2+40.874*(n/1000).^3-3.8445*(n/1000).^4;
600~4000rpm 油拟合公式计算发动机转距
Ft1=Tq*i0*ig(1)*nt/r; 
Ft2=Tq*i0*ig(2)*nt/r; 
Ft3=Tq*i0*ig(3)*nt/r; 
Ft4=Tq*i0*ig(4)*nt/r; %从 600~4000rpm 各挡位的驱动力
Ff=G*f; 
ua=linspace(0,200,100); 
Fw=CDA*ua.*ua/21.15; %空气阻力
plot(ua1,Ft1,ua2,Ft2,ua3,Ft3,ua4,Ft4,ua,Ff+Fw); %画出各挡位的 Ua-Ft,及 Ua-Ff+Ft
xlabel('ua/ km/h'); 
ylabel('F/N'); %标注横纵轴
title(' 汽车驱动力 -行驶阻力平衡图 ');%标注图形题目
gtext('Ft1'),gtext('Ft2'),gtext('Ft3'),gtext('Ft4'),gtext('Ff+Fw'); %给每根线条添加符号
legend('Ft1','Ft2','Ft3','Ft4','Ff+Fw'); %标注图例
umax=max(ua4); 
disp('汽车最高车速 ='); 
disp(umax);disp('km/h'); 
imax=tan(asin(max((Ft1-(Ff+Fw))/G))); %最大爬坡度的公式
disp('汽车最大爬坡度 ='); 
disp(imax);%输出最高车速 ,与最大爬坡度的结果
% 从
n=600:1:4000; %600 最低转速 ,4000 最高转速 ,相邻数组间隔 1
r=0.367; 
i0=5.83; 
eff=0.85; 
f=0.013; 
CdA=2.77; 
%各转速下的功率
%各转速各挡位下的速度
m=3880; 
g=9.8; %输入已知参数
G=m*g; 
Ttq=-19.313+295.27*n/1000-165.44*(n/1000).^2+40.874*(n/1000).^3-3.8445*(n/1000).^4; 
%从 600~4000rpm 油拟合公式计算发动机转距
for ig=[6.09,3.09,1.71,1.00] 
Ua=0.377*r*n/ig/i0; 
Pe=Ttq.*n/9550; 
plot(Ua,Pe); 
hold on;  %使当前轴及图形保持而不被刷新 , 准备接受此后将绘制的图形 ,多图共存
end 
Ua=0:0.1:max(Ua); 
Pf=G*f*Ua/3600;  %滚动阻力
Pw=CdA*Ua.^3/76140;  %空气阻力
plot(Ua,(Pf+Pw)/eff); 
title(' 汽车的功率平衡图 '), 
xlabel('Ua/(km/h)'),ylabel('P/kw'); %画出汽车的功率平衡图
gtext('Ft1'),gtext('Ft2'),gtext('Ft3'),gtext('Ft4'),gtext('(Pf+Pw)/nt'); 
legend(' Ⅰ ',' Ⅱ',' Ⅲ ',' Ⅳ ','Pf+Pw/nt'); 
n=600:1:4000; %600 最低转速 ,4000 最高转速 ,相邻数组间隔
r=0.367; 
i0=5.83; 
nt=0.85; 
f=0.013; 
CdA=2.77; 
m=3880; 
g=9.8; %输入已知参数
G=m*g; 
Ttq=-19.313+295.27*n/1000-165.44*(n/1000).^2+40.874*(n/1000).^3-3.8445*(n/1000).^4; 
%从 600~4000rpm 油拟合公式计算发动机转距
for ig=[6.09,3.09,1.71,1.00] 
Ua=0.377*r*n/ig/i0; 
Ft=Ttq*i0*ig*nt/r; 
Fw=CdA*Ua.^2/21.15; 
D=(Ft-Fw)/G 
plot(Ua,D); 
hold on;  %使当前轴及图形保持而不被刷新,准备接受此后将绘制的图形,多图共存
end 
f=0.0076+0.000056*Ua %滚动阻力与速度之间的关系
plot(Ua,f);  %画出速度与滚动阻力图
title(' 汽车动力特性图 '),%给图加题目
xlabel('Ua/(km/h)'),ylabel('D'); 
gtext(' Ⅰ '),gtext(' Ⅱ '),gtext(' Ⅲ '),gtext(' Ⅳ'),gtext('f'); 
legend(' Ⅰ ',' Ⅱ',' Ⅲ ',' Ⅳ ','f'); 
%汽车动力因子公式
%画出汽车动力特性图
n=600:10:4000;  %600 最低转速 ,4000 最高转速 ,相邻数组间隔 10
m=3880; 
g=9.8; 
nmin=600; 
nmax=4000; 
G=m*g; 
ig=[6,09 3.09 1.71 1.00]; 
nT=0.85; 
r=0.367; 
f=0.013; 
CDA=2.77; 
i0=5.83; 
L=3.2; 
a=1.947; 
hg=0.9; 
If=0.218; 
Iw1=1.798; 
Iw2=3.598; %输入已知参数
Tq=-19.313+295.27*(n/1000)-165.44*(n/1000).^2+40.874*(n/1000).^3-3.8445*(n/1000).^4; 
%从 600~4000rpm 油拟合公式计算发动机转距
Ft1=Tq*ig(1)*i0*nT/r; 
Ft2=Tq*ig(2)*i0*nT/r; 
%各挡位各转速下的速度
Ft3=Tq*ig(3)*i0*nT/r; 
Ft4=Tq*ig(4)*i0*nT/r;  %各转速各挡位下的驱动力
ua1=0.377*r*n/ig(1)/i0; 
ua2=0.377*r*n/ig(2)/i0; 
ua3=0.377*r*n/ig(3)/i0; 
ua4=0.377*r*n/ig(4)/i0; 
Fw1=CDA*ua1.^2/21.15; 
Fw2=CDA*ua2.^2/21.15; 
Fw3=CDA*ua3.^2/21.15; 
Fw4=CDA*ua4.^2/21.15;  %不同速度下的空气阻力
Ff=G*f; 
deta1=1+(Iw1+Iw2)/(m*r^2)+(If*ig(1)^2*i0^2*nT)/(m*r^2); 
deta2=1+(Iw1+Iw2)/(m*r^2)+(If*ig(2)^2*i0^2*nT)/(m*r^2); 
deta3=1+(Iw1+Iw2)/(m*r^2)+(If*ig(3)^2*i0^2*nT)/(m*r^2); 
deta4=1+(Iw1+Iw2)/(m*r^2)+(If*ig(4)^2*i0^2*nT)/(m*r^2); 
算系数
a1=(Ft1-Ff-Fw1)/(deta1*m);ad1=1./a1; 
a2=(Ft2-Ff-Fw2)/(deta2*m);ad2=1./a2; 
a3=(Ft3-Ff-Fw3)/(deta3*m);ad3=1./a3; 
a4=(Ft4-Ff-Fw4)/(deta4*m);ad4=1./a4;  %各挡位下的加速度
plot(ua1,ad1,ua2,ad2,ua3,ad3,ua4,ad4); 
title(' 汽车的加速度倒数曲线 '); 
xlabel('ua(km/h)'); ylabel('1/a )');  %作汽车加速度倒数曲线
gtext('1/a1'),gtext('1/a2'),gtext('1/a3'),gtext('1/a4'); 
legend('1/a1','1/a2','1/a3','1/a4'); 
%不同挡位下的汽车旋转质量换
n=600:10:4000; 
m=3880; 
g=9.8; 
nmin=600; 
nmax=4000; 
G=m*g; 
ig=[6.09 3.09 1.71 1.00]; 
nT=0.85; 
r=0.367; 
f=0.013; 
CDA=2.77; 
i0=5.83; 
L=3.2; 
a=1.947; 
hg=0.9; 
If=0.218; 
Iw1=1.798; 
Iw2=3.598;  %输入已知参数
Tq=-19.313+295.27*(n/1000)-165.44*(n/1000).^2+40.874*(n/1000).^3-3.8445*(n/1000).^4; 
%从 600~4000rpm 油拟合公式计算发动机转距
Ft1=Tq*ig(1)*i0*nT/r; 
Ft2=Tq*ig(2)*i0*nT/r; 
Ft3=Tq*ig(3)*i0*nT/r; 
Ft4=Tq*ig(4)*i0*nT/r; %各转速各挡位下的驱动力
ua1=0.377*r*n/ig(1)/i0; 
ua2=0.377*r*n/ig(2)/i0; 
ua3=0.377*r*n/ig(3)/i0; 
ua4=0.377*r*n/ig(4)/i0; %各挡位各转速下的速度
Fw1=CDA*ua1.^2/21.15; 
Fw2=CDA*ua2.^2/21.15; 
Fw3=CDA*ua3.^2/21.15; 
Fw4=CDA*ua4.^2/21.15; %不同速度下的空气阻力
Ff=G*f; 
i1=asin((Ft1-Ff-Fw1)/G); 
i2=asin((Ft2-Ff-Fw2)/G); 
i3=asin((Ft3-Ff-Fw3)/G); 
i4=asin((Ft4-Ff-Fw4)/G); %不同档位下的坡度
plot(ua1,i1,ua2,i2,ua3,i3,ua4,i4); 
title(' 汽车的爬坡度图 '); 
xlabel('ua/(km*h^-1)'); 
ylabel('i/%'); %作汽车的坡度图
gtext(' Ⅰ '),gtext(' Ⅱ '),gtext(' Ⅲ '),gtext(' Ⅳ');