matlab解题实例
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Matlab 综合作业:运用matlab 建模解题
导弹追踪问题
1. 位于坐标原点的甲舰向位于x 轴上点A (1, 0)处的乙舰发射导弹,
导弹头始终对准乙舰.如果乙舰以最大的速度v 0(常数)沿平行于y 轴的直线行驶,导弹的速度是5v 0,求导弹运行的曲线方程.乙舰行驶多远时,导弹将它击中?
解:假设t 时刻导弹的位置为P (x (t ), y (t )),乙舰位于),1(0t v Q 由于导弹头
始终对准乙舰,故此时直线PQ
就是导弹的轨迹曲线弧OP 在点P 处的切线,
即有 x y
t v y --=1'0
即 y y x t v +-=')1(0 (1)
又根据题意,弧OP 的长度为AQ 的5倍,
即
0d 5x
x v t =⎰ (2) 由(1),(2)消去t, 整理得模型:
(3) '151
")1(2y y x +=- 值条件为: 0)0(=y 0)0('=y
令y 1=y , y 2=y 1`,将方程(3)化为一阶微分方程组.
2
151
'')1(y y x +=- ⇒ ⎪⎩⎪⎨⎧-+==)1/(151''21221x y y y y 1.建立M 文件a1.m
function dy=a1(x,y)
dy=zeros(2,1);
dy(1)=y(2);
dy(2)=1/5*sqrt(1+y(1)^2)/(1-x);
2. 取x0=0,xf=0.9999,建立主程序ff6.m 如下:
x0=0,xf=0.9999
[x,y]=ode15s('a1',[x0 xf],[0 0]);
plot(x,y(:,1),'b.')
hold on
y=0:0.01:2;
plot(1,y,'b*')
运行得图:
结论: 导弹大致在(1,0.2)处击中乙舰.
我方战舰发现敌舰位于正东30km,并以90km/h的速度向正北方向行驶,我方迅即向敌舰发射导弹,导弹速度是400km/h,且方向始终对着敌舰。1. 求导弹运行的曲线方程.敌舰行驶多远时,导弹将它击中?