用matlab编程解数学题(急)

某缉私艇上的雷达发现正东方向15海里处有一艘走私船正以20海里/小时的速度向正北方向行驶,缉私艇立即以40海里/小时的速度前往拦截。用雷达艇进行跟踪,可保持缉私艇的速度方... 某缉私艇上的雷达发现正东方向15海里处有一艘走私船正以20海里/小时的速度向正北方向行驶,缉私艇立即以40海里/小时的速度前往拦截。用雷达艇进行跟踪,可保持缉私艇的速度方向始终指向走私船。试建立任意时刻的位置和缉私艇航线的数学模型,确定缉私船追上走私船的位置,求出追上时间。 展开
 我来答
天上的一条龙
2011-05-05 · TA获得超过476个赞
知道小有建树答主
回答量:221
采纳率:0%
帮助的人:201万
展开全部

文件1jisi.m

%Creat the function for jisi

%Let x(1)=x, x(2)=y

function dx=jisi(t,x,a,b,c)

s=sqrt((c-x(1))^2+(a*t-x(2))^2);

dx=[b*(c-x(1))/s;b*(a*t-x(2))/s];

文件2seajisi.m

clear,clf,shg

%Set the definied time

%ts=0:0.05:.5;

%

ts=0:0.1:1.6;

n=length(ts);

x0=[0 0];

%a=20;b=40;c=15;

%

a=35;b=40;c=15;

%

opt=odeset('RelTol',1e-6,'AbsTol',1e-9);

%[t,x]=ode45(@jisi,ts,x0,[],a,b,c);

%

[t,x]=ode45(@jisi,ts,x0,opt,a,b,c);

%exact solution x1=c

y1=a*t;

%output t,x(t),y(t) and draw x(t),y(t)

[t,x,y1]

plot(t,x),grid,gtext('x(t)','FontSize',16),

gtext('y(t)','FontSize',16),pause

%draw y(x): the position of tatch jisi

plot(x(:,1),x(:,2),'r*'),grid

xlabel('x','FontSize',16),ylabel('y','FontSize',16)

追问
文件2到哪里结束呀?还有,就是好像没有定义“ts”呀?
追答
就到图片的上方,ts在前几行,这是老师编的,应该不会有什么问题
丿Happy灬殇丨
2011-05-05
知道答主
回答量:19
采纳率:0%
帮助的人:0
展开全部
...。。。。//有关缉私艇用_p表示,有关走私船用_c表示,r为两艇距离
//以缉私艇开始位置为坐标原点
double x_p,y_p,x_c,y_c,t;
double dt,r,dx_p,dy_p,dx_c,dy_c,v_p,v_c;
dt=0.001;
v_p=40.0; v_c=20.0;
x_p=0.0; y_p=0.0;
x_c=15.0; y_c=0.0;
t=0.0;
dx_p=v_p; dy_p=0.0;
dx_c=0.0; dy_c=v_c;
r=sprt((x_c-x_p)*(x_c-x_p)+(y_c-y_p)*(y_c-y_p));
for(t=0.0;r<0.0001;t+=dt)
{
dx_p=(x_c-x_p)/r;
dy_p=(y_c-y_p)/r;
//更新位置
x_p+=dx_p; y_p+=dy_p;
x_c+=dx_c; y_c+=dy_c;
r=sprt((x_c-x_p)*(x_c-x_p)+(y_c-y_p)*(y_c-y_p));
}
cout<<"相遇时间 t="<<t;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式