MATLAB,物理,计算并画图

炮弹飞行过程中,忽略竖直方向的空气阻力,水平方向空气阻力与速度之间的关系是F=kv^2,试求炮弹的轨迹方程,并利用Matlab进行数字模拟,画出炮弹轨迹图 k为常数自行设定,查阅资料获得炮弹的初速度v0,炮弹初速度与水平方向的夹角自行设定

你好同学,代码供参考,有帮助望采纳哟,谢谢啦

v0 =500; % 初速度
theta = 20;%仰角
v0x = v0*cosd(theta);
v0y = v0*sind(theta);
k = 0.005; % 阻力系数
m = 80; % 质量
dt = 0.01; % 时间间隔
nt = 100000;%时间步
x = zeros(nt,1);
y = x;
g = 9.8; % 重力加速度
for i = 2:1:nt
v0x = v0x - (sign(v0x))*k*v0x^2/m*dt;
x(i) = x(i-1)+v0x*dt;
v0y = v0y - g*dt;
y(i) = y(i-1)+v0y*dt;
if(y(i)<=0)
    y(i:1:end)=nan;
    break;
end
end
plot(x,y)

img