预览加载中,请您耐心等待几秒...
1/6
2/6
3/6
4/6
5/6
6/6

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

(完整版)火炮内弹道求解与计算(完整版)火炮内弹道求解与计算(完整版)火炮内弹道求解与计算火炮内弹道求解与计算摘要:本文结合火炮内弹道基本方程,得出压力、速度与行程、时间的关系式.并利用了MATLAB的程序对该火炮系统的内弹道过程进行求解.关键词:内弹道基本方程;MATLAB;1。火炮内弹道诸元火炮内弹道诸元数据如下表所示:炮膛断面积S药室容积V0弹丸全行程Ig弹丸质量m装药质量dm2dm3dmkgkg0.8187.9247.4815.65。5火药参数如下表所示:F燃气比热比k管状火药长2a管状火药厚kJ/kgdm3/kgkg/dm31mmmm96011。61。22601.7协调常量如下表所示:BIk挤进压力P011kPa·sMPa1。6021。2761601.930其他所需的参数计算:;;;;2。内弹道基本方程组及其解析解法方程组建立如上,则考虑三个时期分别求解:①前期:考虑为定容燃烧过程,则有条件:则有,令②第一时期:将前期的参量计算得出之后,代入方程组,解算第一时期的v、p值。考虑平均法,利用若设x=Z-Z0则可得,③第二时期:考虑第二时期无火药燃烧,则有:设极限速度,利用①~③可得各个时期的p-l,v-l曲线。3.使用MATLAB对内弹道进行求解由于解析解方法较为繁琐,并且需要相当多的简化才能进行计算,因此考虑使用MATLAB对内弹道方程进行求解与仿真,描绘p-t、p—l、v-t、v-l曲线,如下图所示。最大膛压约为800MPa,出膛速度大约为1000m/s.4。Matlab代码代码:functionndd%100mm加农炮S=0.818;%枪(炮)膛横断面积dm^2M=15.6;%弹重kgV0=7.92;%药室容积dm^3I_g=47。48;%身管行程dmP_0=30000;%起动压力kpafai1=1.02;%次要功系数theta=0.2;%火药热力系数%=========================================f=960000;%火药力kg*dm/kgalpha=1;%余容dm^3/kgdelta=1。6;%火药密度ρkg/dm^3%==================================ome=5。5;%装药量kgu1=1。6184*10^—5;%第一种装药烧速系数dm^3/(s*kg)n1=1;%装药压力指数n1lambda=—0。5;%装药形状特征量λlambda_s=0;%装药分裂点形状特征量λschi=2。01;%装药形状特征量χchi_s=0;%装药分裂点形状特征量χsmu=0;%装药形状特征量μet1=1.7*10^—2;%装药药厚δ0d1=1。7*10^—2;%装药火药内径dB=1。602;%=========================================%常数与初值计算-——-—-—————--——--——---————----——-—------—---————--—-—-——-———---——l_0=V0/S;Delta=ome/V0;phi=1。276;v_j=196*f*ome/(phi*theta*M);v_j=sqrt(v_j);Z_s=1;p_0=P_0/(f*Delta);psi_0=(1/Delta-1/delta)/(f/P_0+alpha—1/delta);Z_0=(sqrt(1+4*psi_0*lambda/chi)-1)/(2*lambda);%解算子--—---————--—————---——--—-————----—-————----—---——-———-——-——————-——-——-C=zeros(1,12);C(1)=chi;C(2)=lambda;C(3)=lambda_s;C(4)=chi_s;C(5)=Z_s;%C(6)=theta;C(7)=B;C(8)=n1;C(9)=Delta;C(10)=delta;C(11)=alpha;C(12)=mu;C;y0=[Z_0;0;0;psi_0];options=odeset('outputfcn',’odeplot');[tt,y]=ode45(@ndd_fun,0:100,[Z_0;0;0],options,C);l=y(:,2);l=l*l_0;fl=find(l〉=I_g);fl=min(fl);[tt,y]=ode45(@ndd_fun,0:0.005:fl,[Z_0;0;0],options,C);Z=y(:,1);lx=y(:,2);vx=y(:,3);psi=(Z>=0&Z<1).*(chi*Z。*(1+lambda*Z+mu*Z))+..。%%%%%%%%%(Z>=1&Z〈Z_s).*(chi_s*Z。*(1+lambda_s*Z))+。.