⛄一、获取代码方式
获取代码方式1:
完整代码已上传我的资源:【气动学】基于matlab内弹道【含Matlab源码 057期】
点击上面蓝色字体,直接付费下载,即可。
获取代码方式2:
付费专栏Matlab物理应用(初级版)
备注:
点击上面蓝色字体付费专栏Matlab物理应用(初级版),扫描上面二维码,付费29.9元订阅海神之光博客付费专栏Matlab物理应用(初级版),凭支付凭证,私信博主,可免费获得1份本博客上传CSDN资源代码(有效期为订阅日起,三天内有效);
点击CSDN资源下载链接:1份本博客上传CSDN资源代码
⛄二、部分源代码
%%
%69式双联30mm舰炮
clc
clear all
A=0.0737; %枪(炮)膛横断面积A dm^2
G=0.354; %弹重 kg
W0=0.22; %药室容积 dm^3
l_g=19.54; %身管行程 dm
P_0 =30000; %起动压力 30kpa
fai1=1.1947834; %次要功系数
K=1.02; %运动阻力系数φ1
theta =0.2; %火药热力系数 k-1
f=950000; %火药力 kgdm/kg 硝化棉
alpha=1; %余容 气体分子作用修正量 dm^3/kg
delta=1.6; %火药密度γ kg/dm^3
ome=0.175; %第一种装药量 kg
u1=5.375210^-5; %第一种装药烧速系数 dm^3/(skg)
n1=0.85; %第一种装药的压力指数n1
lambda=0.3311631; %第一种装药形状特征量λ1
lambda_s=-0.3685706; %第一种装药分裂点形状特征量λ1s -0.3885706
chi=0.72347956; %第一种装药形状特征量χ1
chi_s=1.4872194; %第一种装药分裂点形状特征量χ1s
mu=-0.033166463; %第一种装药形状特征量μ1
et1=0.3910^-2; %第一种装药药厚δ01,燃烧完的厚度
d1=0.3810^-2; %第一种装药火药内径d1
Ro1=0.1547; %药型系数α1 花边型药粒
%%
%常数与初值计算-----------------------------------------------------------------
l_0=W0/A;%相等体积长度l_0
Delta=ome/W0;%火药装填密度
phi=K + ome/(3G);%忽略了后座运动能量的次要功计算系数
v_j0=196fome/(phithetaG);
v_j=sqrt(v_j0); %假设极限速度
B0 = 98*(et1A)^2/( u1u1fomephiG );
B=B0*(fDelta)^(2-2n1);%中间计算量
Z_s=1+Ro1*(d1/2+et1)/et1;%多孔火药燃烧分裂时截面内的相当内切圆半径,碎粒全部燃烧完时的燃去相对相随度。
psi_0=(1/Delta - 1/delta)/(f/P_0 + alpha - 1/delta);%火药燃烧百分比,已燃去相对重量
Z_0=(sqrt(1+4psi_0lambda/chi) - 1)/(2lambda);%火药的已燃相对厚度z0
%%
%解算子-----------------------------------------------------------------------
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];%相对燃烧表面积 l弹丸行程 弹丸速度 火药燃烧百分比
options = odeset(‘outputfcn’,‘odeplot’);%积分参数设定 输出函数时间轨迹图
[tt,y] = ode45(@ndd_fun,0:100,[Z_0;0;0],options,C);%4阶龙格库塔函数
%%
l = y(:,2);%弹丸行程
l = ll_0;
fl = find(l>=l_g);
fl = min(fl);
[tt,y] = ode45(@ndd_fun,0:0.0001:fl,[Z_0;0;0],options,C);
Z = y(:,1);
lx = y(:,2);%弹丸行程
vx = y(:,3);%弹丸速度
psi=(Z>=0&Z<1).(chiZ.(1+lambdaZ+muZ.Z))+(Z>=1&Z<Z_s).((chi_sZ).(1+lambda_sZ))+(Z>=Z_s)1;%火药燃烧百分比
l_psi=1-(Delta/delta)(1-psi)-alphaDeltapsi;
px=(psi-vx.*vx )./(lx+l_psi);%膛底压力
format;
⛄三、运行结果
⛄四、matlab版本及参考文献
1 matlab版本
2014a
2 参考文献
[1] 门云阁.MATLAB物理计算与可视化[M].清华大学出版社,2013.
3 备注
简介此部分摘自互联网,仅供参考,若侵权,联系删除