实验3缉私艇追击走私船
时间:2025-04-08
时间:2025-04-08
计算机仿真运算法
数学实验Experiments in Mathematics Laboratory Mathematics阮小娥博士李萍
2014/3/31
计算机仿真运算法
数学实验报告要求:1.实验问题 2.问题分析:包括解决问题的理论依据,建立的数学模型以及求解问题的思路和方法. 3.程序设计. 4.结果分析和结论. 5.总结和体会.
计算机仿真运算法
实验3缉私艇追击走私船3.1实验目的
2014/3/31
(1)学会用MATLAB软件求解微分方程的初值问题; (2)了解微分方程数值解的思想,掌握微分方程数值解的方法; (3)学会根据实际问题建立简单微分方程数学模型,提高解决问题能力; (4)了解简单的计算机仿真和数据模拟的基本方法. 3.2理论知识 (1)微分方程及解析解; (2)微分方程及数值解;在实际生产和科研中所建立的微分方程往往很复杂,尽管是一阶微分方程,有时也很难求解,有些微分方程甚至只能求出其隐式解,要想计算相应已知变量的函数值也是很困难的,在这种情况下,我们一般转向去求微分方程及数值解,即近似解。在实际上,对初值问题,一般是要求得到解在若干个点上满足规定精确度的近似值,研究常微分方程的数值解法,或者得到一个满足精确度要求的便于计算的表达式。
计算机仿真运算法
因此,研究常微分方程的数值解法是十分必要的。对常微分方程 y f ( x, y ) y ( x0 ) y0其数值解就是求其解析解
y y ( x)
在一系列离散点
x1 x2 xn xn 1 处的近似值
y1, y 2, , y n,
计算机仿真运算法
3.3实验问题 1用MATLAB软件求解析解MATLAB软件提供的解常微分方程解析解的指令是dsolve,完整的调用格式是:
dsolve(‘方程1’,‘方程2’,…‘方程n’,‘初始条件’,‘自变量’)微分方程的书写格式规定:当y是因变量时,用“Dny”表示y的n阶导数。
例1求微分方程
y x xy
的通解。
解
输入命令: y=dsolve('Dy=x+x*y','x') y=-1+exp(1/2*x^2)*C1
计算机仿真运算法
例2
求微分方程的特解.
d 2 y dy 2 4 29 y 0 dx dx y (0) 0, y ' (0) 15解输入命令: y=dsolve('D2y+4*Dy+29*y=0','y(0)=0,Dy(0)=15','x')
结果为: y=3e-2xsin(5x)
计算机仿真运算法
2用MATLAB软件求微分方程的数值解一般格式为
[t,x]=solver(’f’,ts,x0,options)自变量值函数值 ode45 ode23 ode113 ode15s ode23s由待解方程写成的m文件名 ts=[t0, tf],t0、 tf为自变量的初值和终值函数的初值
ode23:组合的2/3阶龙格-库塔-芬尔格算法 ode45:运用组合的4/5阶龙格-库塔-芬尔格算法用于设定误差限(缺省时设定相对误差10-3,绝对误差10-6,命令为:options=odeset(’reltol’,rt,’abstol’,at), rt,at:分别为设定的相对误差和绝对误差.注意:1、在解n个未知函数的方程组时,x0和x均为n维向量,m-文件中的待解方程组应以x的分量形式写成. 2、使用Matlab软
件求数值解时,高阶微分方程必须等价地变换成一阶微分方程组.
计算机仿真运算法
例1 y x, y (0) 0 function u=文件名(自变量,因变量) u=微分方程的右端然后在指令窗口执行 ode23(‘文件名’,[0,2],0)建立M文件,格式如左
可得到图形与相关数据可得到两组数据
再执行[x,y]=ode23(‘文件名’,[0,2],0)执行plot(x,y)可得到图形
polyfit(自变量,因变量,次数)
计算机仿真运算法
例2
y 2 y x 2 y (0) 1(1)求解析解; (2)求数值解,画出数值解与解析解的曲线比较.实验过程:
(1) y=dsolve('Dy=2*y+x+2','y(0)=1','x')结果为y=-1/2*x-5/4+9/4*exp(2*x) x=0:0.05:6; y=-1/2*x-5/4+9/4*exp(2*x); plot(x,y)
计算机仿真运算法
(2)编写函数文件,并存为fc10 function f=fc10(x,y) f=2*y+x+2然后在指令窗口执行[xb,yb]=ode23('fc10',[0,1],1) plot(x,y,xb,yb,’r*’)
计算机仿真运算法
3缉私艇追击走私船海上边防缉私艇发现距c公里处有一走私船正以匀速a沿直线行驶,缉私艇立即以最大速度b追赶,在雷达的引导下,缉私艇的方向始终指向走私船。问缉私艇何时追赶上走私船?并求出缉私艇追赶的路线。
y
o
c
x
计算机仿真运算法
建立模型走私船初始位置在点(0,0),行驶方向为y轴正方向,缉私艇的初始位置在点(c,0),缉私艇行驶的路程为s。在时刻t:走私船的位置到达点 R(0, at )缉私艇到达点 D ( x, y )
(0, at )
( x, y )
o2 d2y dy x 2 r 1 dx dx y (c) 0, y (c) 02
dy y at tg dx x 0
ds b dt
d y dt x a 2 dx dx
2
dt dt ds 1 dy 1 dx ds dx b dx
r a/b
计算机仿真运算法
模型求解(1)求解析解
d 2 y dp dy p, 2 令: dx, dx dx dx dp r 2 x 1 p p (c ) 0 r x 2 p 1 p c r c p 1 p 2 x
2 d2y dy x 2 r 1 dx dx y (c ) 0, y (c ) 0
r a/b dy 1 x r c r dx 2 c x y (c ) 0
计算机仿真运算法
a 1)r 1, b
1 r 1 r c 1 x 1 x cr y 2 2 1 r c 1 r c 1 r y cr bc cr 2当 x= 0时, y 2, t 2 2 1 r a a (1 r ) (b a )
dy 1 x r c r dx 2 c x y (c ) 0
c=3千米,a=0.4千米/分,分别取b=0.6,0.8,1.2千米/分时,缉私艇追赶路线的图形。
4 3.5 3 2.5 2
追赶时间分别为: t=9,5,2.8125(分钟)
1.5 1 0.5 0 0 0.5 1 1.5 2 2.5 3 3.5
计算机仿真运算法
a 2) r 1, b
1 r r 1 1 c c 1 x cr y 2 2 r 1 x r 1 1 r c 当 x 0
…… 此处隐藏:2533字,全部文档内容请下载后查看。喜欢就下载吧 ……