为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

北航课程设计-飞机飞行性能计算-程序

2017-10-29 25页 doc 59KB 147阅读

用户头像

is_037433

暂无简介

举报
北航课程设计-飞机飞行性能计算-程序北航课程设计-飞机飞行性能计算-程序 #include #include float Xm; void main() { //********航迹倾角gama和上升率Vv的计算*******// FILE *fp; //发动机可用推力Ta的计算 float T[23][9]= {{3840,3490,2880,2300,1680,1320,1160,903,720}, {3820,3470,2860,2290,1670,1300,1150,893,700}, {3800,3460,2850,2280,1660...
北航课程设计-飞机飞行性能计算-程序
北航课程设计-飞机飞行性能计算-程序 #include #include float Xm; void main() { //********航迹倾角gama和上升率Vv的计算*******// FILE *fp; //发动机可用推力Ta的计算 float T[23][9]= {{3840,3490,2880,2300,1680,1320,1160,903,720}, {3820,3470,2860,2290,1670,1300,1150,893,700}, {3800,3460,2850,2280,1660,1300,1140,874,680}, {3800,3460,2860,2300,1670,1300,1140,874,680}, {3810,3470,2870,2320,1680,1310,1150,884,690}, {3820,3490,2890,2340,1690,1320,1160,894,700}, {3840,3520,2920,2380,1700,1340,1180,906,700}, {3880,3560,2970,2430,1740,1360,1200,926,720}, {3930,3620,3020,2480,1780,1390,1220,941,740}, {3990,3670,3090,2540,1820,1430,1260,981,780}, {4040,3730,3150,2600,1870,1460,1290,1016,820}, {4110,3800,3220,2660,1920,1500,1330,1056,860}, {4190,3880,3300,2730,1980,1560,1370,1087,900}, {4270,3960,3370,2800,2040,1610,1420,1129,930}, {4350,4040,3450,2880,2110,1660,1470,1170,960}, {4440,4140,3520,2960,2180,1720,1520,1211,1000}, {4530,4240,3620,3040,2250,1780,1590,1277,1050}, {4620,4340,3720,3120,2320,1850,1650,1324,1090}, {4720,4450,3800,3220,2400,1920,1710,1371,1130}, {4820,4560,3900,3300,2480,1990,1770,1423,1180}, {4920,4660,4000,3400,2560,2060,1840,1484,1230}, {5020,4770,4100,3500,2650,2140,1920,1551,1280}, {5140,4880,4200,3600,2740,2220,1990,1613,1340}}; float Ti[23][7]= {{0.097,0.097,0.097,0.097,0.097,0.097,-0.02}, {0.080,0.08,0.08,0.08,0.08,0.08,-0.02}, {0.063,0.063,0.063,0.063,0.063,0.063,-0.02}, {0.048,0.048,0.048,0.048,0.063,0.063,-0.02}, {0.030,0.030,0.030,0.030,0.030,0.030,-0.02}, {0.015,0.015,0.015,0.015,0.015,0.015,-0.02}, {0,0,0,0,0,0,-0.02}, {0,0,0,0,0,0,-0.02}, {0,0,0,0,0,0,-0.02}, {0,0,0,0,0,0,-0.02}, {0,0,0,0,0,0,-0.02}, {0,0,0,0,0,0,-0.02}, {0,0,0,0,0,0,-0.02}, {0,0,0,0,0,0,-0.02}, {0,0,0,0,0,0,-0.02}, {0,0,0,0,0,0,-0.02}, {0,0,0,0,0,0,-0.02}, {0,0,0,0,0,0,-0.02}, {0,0,0,0,0,0,-0.02}, {0,0,0,0,0,0,-0.02}, {0,0,0,0,0,0,-0.02}, {0,0,0,0,0,0,-0.02}, {0,0,0,0,0,0,-0.02}}; float Tj[23]= {-0.04,-0.04,-0.04,-0.04,-0.04,-0.04,-0.04,-0.04,-0.04,-0.04,-0.04,-0.045,-0.05, -0.05,-0.05,-0.05,-0.05,-0.05,-0.05,-0.05,-0.05,-0.05,-0.05}; //11km以下 float Ta[23][9]; int i,j; for (j=0;j<=6;j++) { for(i=0;i<=22;i++) {Ta[i][j]=T[i][j]*(1+Ti[i][j])*(1+Tj[i]); //printf("Ta[%d][%d]=%f\n",i,j,Ta[i][j]); } //printf("\n"); } //11km以上 float md[9]={1.22500,1.11164,0.909121,0.736115,0.525167,0.412706,0.363918,0.287262,0.2 45355};//大气密度 for(j=7;j<=8;j++) { for(i=0;i<=22;i++) {Ta[i][j]=Ta[i][6]*md[j]/md[6]; //printf("Ta[%d][%d]=%f\n",i,j,Ta[i][j]); } //printf("\n"); } //平飞需用推力TR的计算 float Ma[23]= {0.2,0.25,0.3,0.35,0.4,0.45,0.5,0.55,0.6,0.65,0.7,0.75,0.8,0.85,0.9,0.95,1,1.05, 1.10,1.15,1.2,1.25,1.3};//Ma float g=9.8; int H[9]={0,1000,3000,5000,8000,10000,11000,12500,13500};//高度 int S=23; float a[9]= {340.294,336.434,328.578,320.529,308.063,301.636,299.463,295.069,295.069};//音速 float CD0[23][9]= {{0.0165,0.0166,0.0168,0.0170,0.0173,0.0175,0.0177,0.0180,0.0182}, {0.0165,0.0166,0.0168,0.0170,0.0173,0.0175,0.0177,0.0180,0.0182}, {0.0165,0.0166,0.0168,0.0170,0.0173,0.0175,0.0177,0.0180,0.0182}, {0.0165,0.0166,0.0168,0.0170,0.0173,0.0175,0.0177,0.0180,0.0182}, {0.0165,0.0166,0.0168,0.0170,0.0173,0.0175,0.0177,0.0180,0.0182}, {0.0165,0.0166,0.0168,0.0170,0.0173,0.0175,0.0177,0.0180,0.0182}, {0.0165,0.0166,0.0168,0.0170,0.0173,0.0175,0.0177,0.0180,0.0182}, {0.0165,0.0166,0.0168,0.0170,0.0173,0.0175,0.0177,0.0180,0.0182}, {0.0165,0.0166,0.0168,0.0170,0.0173,0.0175,0.0177,0.0180,0.0182}, {0.0166,0.0167,0.0169,0.0171,0.0174,0.0176,0.0178,0.0181,0.0183}, {0.0167,0.0168,0.0170,0.0172,0.0175,0.0177,0.0179,0.0182,0.0184}, {0.0168,0.0169,0.0171,0.0173,0.0176,0.0178,0.0180,0.0183,0.0185}, {0.0170,0.0171,0.0173,0.0175,0.0178,0.0180,0.0182,0.0185,0.0187}, {0.0175,0.0176,0.0178,0.0180,0.0183,0.0185,0.0187,0.0190,0.0192}, {0.0184,0.0185,0.0187,0.0189,0.0192,0.0194,0.0196,0.0199,0.0201}, {0.0240,0.0241,0.0243,0.0245,0.0248,0.0250,0.0252,0.0255,0.0258}, {0.0285,0.0286,0.0288,0.0290,0.0293,0.0295,0.0297,0.0300,0.0302}, {0.0365,0.0366,0.0368,0.0370,0.0373,0.0375,0.0377,0.0380,0.0382}, {0.0370,0.0371,0.0373,0.0375,0.0378,0.0380,0.0382,0.0385,0.0387}, {0.0365,0.0366,0.0368,0.0370,0.0373,0.0375,0.0377,0.0380,0.0382}, {0.0350,0.0351,0.0353,0.0355,0.0358,0.0360,0.0362,0.0365,0.0367}, {0.0345,0.0346,0.0348,0.0350,0.0353,0.0355,0.0357,0.0360,0.0362}, {0.0340,0.0341,0.0343,0.0345,0.0348,0.0350,0.0352,0.0355,0.0357}};//零升阻力系数 float A[23]= {0.211,0.211,0.211,0.211,0.211,0.211,0.211,0.211,0.211,0.211,0.211,0.211,0.212,0 .213,0.216,0.219,0.222,0.227,0.232,0.238,0.245,0.253,0.262};//升致阻力因子 float mav[9]= {6670,6667,6656,6646,6632,6623,6618,6607,6596};//平均质量 float TR[23][9],dT[23][9]; for(j=0;j<=8;j++) { for(i=0;i<=22;i++) {TR[i][j]=md[j]*Ma[i]*Ma[i]*a[j]*a[j]*S*CD0[i][j]/2+2*A[i]*mav[j]*mav[j]*g*g/(md [j]*Ma[i]*Ma[i]*a[j]*a[j]*S); //printf("TR[%d][%d]=%f\n",i,j,TR[i][j]); } //printf("\n"); } //剩余推力dT的计算 for(j=0;j<=8;j++) {for(i=0;i<=22;i++) { dT[i][j]=Ta[i][j]*g-TR[i][j]; //printf("dT[%d][%d]=%f\n",i,j,dT[i][j]); } //printf("\n"); } //航迹倾角gama和上升率Vv的计算 float gama[23][9],Wav[9],Vv[23][9]; for(j=0;j<=8;j++) {for(i=0;i<=22;i++) {Wav[j]=mav[j]*g; gama[i][j]=asin(dT[i][j]/Wav[j]>(-1)?dT[i][j]/Wav[j]:(-1)); Vv[i][j]=dT[i][j]*Ma[i]*a[j]/Wav[j]; //printf("gama[%d][%d]=%f Vv[%d][%d]=%f\n",i,j,gama[i][j],i,j,Vv[i][j]); } //printf("\n"); } fp=fopen("E:\\大四上\\课程设计\\航迹倾角gama和上升率Vv.txt","w");//打开文件,写数据 for(j=0;j<=8;j++) {for(i=0;i<=22;i++) {fprintf(fp,"%d %f %f %f\n",H[j],Ma[i],gama[i][j],Vv[i][j]);} } fclose(fp); //********最大航迹倾角gamamax及对应速度Vgama和最快上升率Vvmax及对应速度Vqc*******// float gamamax[9],dTmax[9],y1[9],y2[9],y3[9],x1[9],x2[9],x3[9],Vgama[9],Mgama[9],Mqc[9] ; float Vvmax[9],dTV[23][9],dTVmax[9],Vqc[9]; float extrem(float X1,float Y1,float X2,float Y2,float X3,float Y3); for(j=0;j<=8;j++) {y2[j]=dT[0][j]; for(i=1;i<=22;i++) {if(y2[j]0) {x1[j]=dT[i][j];y1[j]=Ma[i]; x2[j]=dT[i+1][j];y2[j]=Ma[i+1]; x3[j]=dT[i+2][j];y3[j]=Ma[i+2]; Vmin2[j]=chazhi(x1[j],y1[j],x2[j],y2[j],x3[j],y3[j],0)*a[j];} } if(dT[21][j]<0&&dT[22][j]>0) {x1[j]=dT[20][j];y1[j]=Ma[20]; x2[j]=dT[21][j];y2[j]=Ma[21]; x3[j]=dT[22][j];y3[j]=Ma[22]; Vmin2[j]=chazhi(x1[j],y1[j],x2[j],y2[j],x3[j],y3[j],0)*a[j];} } for (j=0;j<9;j++) {for(i=0;i<23;i++) {cl[i][j]=2*Wav[j]/(md[j]*a[j]*a[j]*S*Ma[i]*Ma[i]); dcl[i][j]=cl[i][j]-CL[i]; //printf("dcl[%d][%d]=%f\n",i,j,dcl[i][j]); } //printf("\n"); } for (j=0;j<9;j++) {for(i=0;i<21;i++) {if(dcl[i][j]*dcl[i+1][j]<0) {x1[j]=dcl[i][j];y1[j]=Ma[i]; x2[j]=dcl[i+1][j];y2[j]=Ma[i+1]; x3[j]=dcl[i+2][j];y3[j]=Ma[i+2];} } if(dcl[21][j]*dcl[22][j]<0) {x1[j]=dcl[20][j];y1[j]=Ma[20]; x2[j]=dcl[21][j];y2[j]=Ma[21]; x3[j]=dcl[22][j];y3[j]=Ma[22];} Vmin1[j]=chazhi(x1[j],y1[j],x2[j],y2[j],x3[j],y3[j],0)*a[j]; y2[j]=dcl[0][j]; for(i=0;i<23;i++) {if(y2[j]<=dcl[i][j]) {y2[j]=dcl[i][j];}} {if(y2[j]<0) Vmin1[j]=0.2*a[j];} Vmin[j]=Vmin1[j]>Vmin2[j]? Vmin1[j]:Vmin2[j]; Mamin[j]=Vmin[j]/a[j]; Mamin1[j]=Vmin1[j]/a[j]; Mamin2[j]=Vmin2[j]/a[j]; //printf("Vmin1[%d]=%f Vmin2[%d]=%f\n",j,Vmin1[j],j,Vmin2[j]); //printf("Vmin[%d]=%f Mamin[%d]=%f\n",j,Vmin[j],j,Mamin[j]); } for (j=0;j<9;j++) {for(i=22;i>=2;i--) {if(dT[i][j]<0&&dT[i-1][j]>0) {x1[j]=dT[i][j];y1[j]=Ma[i]; x2[j]=dT[i-1][j];y2[j]=Ma[i-1]; x3[j]=dT[i-2][j];y3[j]=Ma[i-2]; Vmax[j]=chazhi(x1[j],y1[j],x2[j],y2[j],x3[j],y3[j],0)*a[j];} } if(dT[1][j]<0&&dT[0][j]>0) {x1[j]=dT[0][j];y1[j]=Ma[0]; x2[j]=dT[1][j];y2[j]=Ma[1]; x3[j]=dT[2][j];y3[j]=Ma[2]; Vmax[j]=chazhi(x1[j],y1[j],x2[j],y2[j],x3[j],y3[j],0)*a[j]; } Mamax[j]=Vmax[j]/a[j]; //printf("Vmax[%d]=%f\n",j,Vmax[j]); } fp=fopen("E:\\大四上\\课程设计\\最小平飞速度和最大平飞速度.txt","w");//打开 文件,写数据 for(j=0;j<=8;j++) { fprintf(fp,"%f %f %f %f %f %f\n",Mamin1[j],Mamin2[j],Vmin[j], Mamin[j],Vmax[j],Mamax[j]); } fclose(fp); //********理论升限和实用升限的计算********// float H1,H2; H1=chazhi(Vvmax[6],H[6],Vvmax[7],H[7],Vvmax[8],H[8],0); H2=chazhi(Vvmax[6],H[6],Vvmax[7],H[7],Vvmax[8],H[8],5); //printf("H1=%f H2=%f\n",H1,H2); fp=fopen("E:\\大四上\\课程设计\\理论升限H1和实用升限H2.txt","w");//打开文件,写 数据 fprintf(fp,"H1=%f H2=%f",H1,H2); fclose(fp); //********最短上升时间sumtime的计算********// float time[1320],VvmaxH; for(i=0;i<1320;i++) { if(i*10<=3000) {time[i]=10/chazhi(0,Vvmax[0],1000,Vvmax[1],3000,Vvmax[2],i*10);} else if(i*10<=8000) {time[i]=10/chazhi(3000,Vvmax[2],5000,Vvmax[3],8000,Vvmax[4],i*10);} else if(i*10<=11000) {time[i]=10/chazhi(8000,Vvmax[4],10000,Vvmax[5],11000,Vvmax[6],i*10);} else if(i*10H2) {VvmaxH=chazhi(11000,Vvmax[6],12500,Vvmax[7],13500,Vvmax[8],H2); time[i]=(H2-i*10)/VvmaxH;} else time[i]=10/chazhi(11000,Vvmax[6],12500,Vvmax[7],13500,Vvmax[8],i*10);} else if(i*10>H2) {time[i]=0;}//实用升限H2=13028m //printf("time[%d]=%f\n",i,time[i]); } float sum; sum=time[0]; for(i=1;i<1320;i++) {sum=time[i]+sum;} //printf("time=%f\n",sum); fp=fopen("E:\\大四上\\课程设计\\最小上升时间.txt","w");//打开文件,写数据 fprintf(fp,"sumtime=%f",sum); fclose(fp); //********航程和航时的计算********// float T11[13][4]= {610,780,858,980, 603,778,866,978, 600,787,886,998, 603,799,907,1026, 611,816,932,1038, 622,835,978,1076, 633,860,1030,1110, 649,898,1078,1167, 671,940,1116,1280, 690,985,1158,1450, 710,1020,1204,1530, 722,1054,1242,1574, 728,1096,1318,1690}; float Cf11[13][4]= {0.905,0.916,0.936,0.980, 0.952,0.950,0.968,1.022, 0.988,0.980,1.000,1.042, 1.024,1.006,1.024,1.066, 1.052,1.035,1.048,1.075, 1.078,1.060,1.077,1.103, 1.092,1.084,1.103,1.120, 1.112,1.106,1.128,1.146, 1.135,1.132,1.149,1.180, 1.157,1.155,1.172,1.225, 1.189,1.176,1.193,1.240, 1.226,1.198,1.211,1.253, 1.262,1.229,1.240,1.288}; float Ma1[13]= {0.3,0.4,0.5,0.6,0.7,0.8,0.9,1.0,1.1,1.2,1.3,1.4,1.5}; float Ti11=-0.02; float Tj11[13]={-0.073,-0.073,-0.073,-0.075,-0.081,-0.091,-0.11,-0.11,-0.11,-0.11,-0.1 1,-0.11,-0.11}; float CD011[13]={0.0177,0.0177,0.0177,0.0177,0.0179,0.0182,0.0196,0.0297,0.0382,0.0362 ,0.0352,0.0356,0.0339}; float A_M[13]={0.211,0.211,0.211,0.211,0.211,0.212,0.216,0.222,0.232,0.245,0.262,0.282 ,0.304}; float Rcr[13][21],Cd[13][21],Cl[13][21],Ta11[13][21]; float T11_[13][21],Cf11_[13][21]; float Cf[13][4]; for(j=0;j<4;j++) {for(i=0;i<13;i++) {Cf[i][j]=1.0*Cf11[i][j];} } //航程的计算 for(i=0;i<13;i++) {for(j=0;j<21;j++) {if(j<10) {T11_[i][j]=chazhi(80,T11[i][0],85,T11[i][1],90,T11[i][2],j+80);} else T11_[i][j]=chazhi(85,T11[i][1],90,T11[i][2],100,T11[i][3],j+80); //printf("T11_[%d][%d]=%f\n",i,j,T11_[i][j]); } //printf("\n"); } for(i=0;i<13;i++) {for(j=0;j<21;j++) {if(j<10) {Cf11_[i][j]=chazhi(80,Cf[i][0],85,Cf[i][1],90,Cf[i][2],j+80);} else Cf11_[i][j]=chazhi(85,Cf[i][1],90,Cf[i][2],100,Cf[i][3],j+80); //printf("Cf11_[%d][%d]=%f\n",i,j,Cf11_[i][j]); } //printf("\n"); } for(j=0;j<21;j++) {for(i=0;i<=12;i++) {Ta11[i][j]=T11_[i][j]*g*(1+Ti11)*(1+Tj11[i]); Cd[i][j]=2.0*Ta11[i][j]/(md[6]*Ma1[i]*Ma1[i]*a[6]*a[6]*S); if(Cd[i][j]=CD011[i]) {Cl[i][j]=sqrt((Cd[i][j]-CD011[i])/A_M[i]);} Rcr[i][j]=3.6*(Cl[i][j]*Ma1[i]*a[6]*log(6600.0/4670.0))/(Cd[i][j]*Cf11_[i][j]); //printf("Rcr[%d][%d]%f\n",i,j,Rcr[i][j]); } //printf("\n"); } float Rcrmaxmax,nRmax1,M1[21],MRmax1,Rcrmax[21]; int k; float N[21]={0.8,0.81,0.82,0.83,0.84,0.85,0.86,0.87,0.88,0.89,0.90,0.91,0.92,0.93,0.94 ,0.95,0.96,0.97,0.98,0.99,1}; for(j=0;j<21;j++) {y2[j]=Rcr[0][j]; for(i=0;i<=12;i++) {if(y2[j]<=Rcr[i][j]) {y2[j]=Rcr[i][j];k=i;}} {if(k==12||Rcr[k+1][j]==0) {y1[j]=Rcr[k][j];y2[j]=Rcr[k-1][j];y3[j]=Rcr[k-2][j]; x1[j]=Ma1[k];x2[j]=Ma1[k-1];x3[j]=Ma1[k-2]; Rcrmax[j]=extrem(x1[j],y1[j],x2[j],y2[j],x3[j],y3[j]);} else {y1[j]=Rcr[k-1][j];y2[j]=Rcr[k][j];y3[j]=Rcr[k+1][j]; x1[j]=Ma1[k-1];x2[j]=Ma1[k];x3[j]=Ma1[k+1]; Rcrmax[j]=extrem(x1[j],y1[j],x2[j],y2[j],x3[j],y3[j]);} M1[j]=Xm;} printf("Rcrmax[%d]=%f \n",j,Rcrmax[j]); } y2[0]=Rcrmax[0]; for(j=1;j<21;j++) {if(y2[0]
/
本文档为【北航课程设计-飞机飞行性能计算-程序】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索