【气动学】内弹道【含Matlab源码 057期】

本文介绍了如何获取关于69式双联30mm舰炮的Matlab源代码,涉及内弹道模型的计算,包括火药动力学参数、解算子和运行结果。使用了MATLAB2014a版本,同时提供了参考文献和代码片段以供学习和研究。
摘要由CSDN通过智能技术生成

在这里插入图片描述

⛄一、获取代码方式

获取代码方式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.3752
10^-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.39
10^-2; %第一种装药药厚δ01,燃烧完的厚度
d1=0.3810^-2; %第一种装药火药内径d1
Ro1=0.1547; %药型系数α1 花边型药粒
%%
%常数与初值计算-----------------------------------------------------------------
l_0=W0/A;%相等体积长度l_0
Delta=ome/W0;%火药装填密度
phi=K + ome/(3
G);%忽略了后座运动能量的次要功计算系数
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 = l
l_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 备注
简介此部分摘自互联网,仅供参考,若侵权,联系删除

  • 29
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Matlab领域

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值