数学实验4
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验4 常微分方程数值解
实验目的:
1、用MATLAB软件掌握求微分方程数值解的方法,并对结果作初步分析;
2、通过实例学习用微分方程模型解决简化的实际问题。
【题目1】放射性废物的处理:有一段时间,美国原子能委员会(现为核管理
委员会)处理浓缩放射性废物时,把它们装入密封性能很好的圆桶中,然后扔到水深300ft的大海中。这种做法是否会造成放射性污染,自然引起生态学家及社会各界的关注。原子能委员会一再保证圆桶非常坚固,绝不会破漏,这种做法是绝对安全的。然而一些工程师们却对此表示怀疑,认为圆桶在海底相撞时有可能发生破裂。于是双方展开了一场笔墨官司。
究竟谁的意见正确呢?原子能委员会使用的是55gal的圆桶,装满放射性废物时的圆桶重量为527.436lbf,在海水中受到的浮力为470.327lbf。此外,下沉时圆桶还要受到水的阻力,阻力与下沉速度成正比,工程师们做了大量实验,测得其比例系数为0.08lbf s/ft。同时,大量破坏性实验发现当圆桶速度超过
40ft/s时,就会因为与海底冲撞而发生破裂。
(1)建立解决上述问题的微分方程模型。
(2)用数值和解析两种方法求解微分方程,并回答谁赢了这场官司。
【问题分析】本题应该求出圆桶下沉到海底时的速度,比较其与40ft/s的大小,来决定谁最后赢了这场官司。
已知水深h=300ft,装满废物的圆桶质量为m=527.436lbf,在海水中受到的浮力为B=470.327lbf,圆桶受到的海水阻力D与下降速度v成正比,比例系数
K=0.08lbfs/ft。
设t时刻圆桶下落深度为y,圆桶速度为v,加速度为a,所受重力为G=mg,所受浮力为f,所受阻力为K*v,则圆桶所受合力为:
F=G-f-Kv
依据牛顿第二定律有:
ma=m dv
dt
=m
d2y
dt2
=G−f−Kv=G−f−K
dy
dt
由此可以利用常微分方程求解,其中v(0)=0,y(0)=0。
【程序运算】
一、数值法
记y(1)=y,y(2)=v,y=(y(1),y(2))T.编写如下M文件:
function dy=fangshe(t,y)%建立名为fangshe的函数M文件
m=527.436*0.4536;
G=527.436*0.4536*9.8;
f=470.327*0.4536*9.8;
Kv=0.08*0.4536*9.8*y(2)/0.3048;
dy=[y(2);(G-f-Kv)/m]%以向量性格是表示方程
编写如下运行程序:
>> ts=[0:2000];
>> y0=[0,0];%给定初值
>> opt=odeset('reltol',1e-3,'abstol',1e-6);%给定精确度
>> [t,y]=ode45(@fangshe,ts,y0,opt);
>> plot(t,y(:,2),‘r’ )%画出v(t)-t图象
>> gtext('t');
>> gtext('v(t)');
运行结果如下:
>> plot(t,y(:,1)),axis([0 25 0 350]),grid; %画出y(t)-t图像>> hold on, ymax=300*0.3048;
>> depth=linspace(ymax,ymax,2001);
>> plot(t,depth,'b'),axis([0 25 0 350]),grid;%画出最深高度图像>>gtext('t'),
>>gtext('y(t)'),
>>gtext('ymax')
运行结果如下:
由图像知,t 大概等于13s 时,圆桶到达海底,结合以上两图可以得知,圆桶落入海底时,会因为速度过大而破裂。
二、解析法
将模型分离变量得: mvdv mg −B −Cv =dy 对两边分别不定积分得:y =
−vm C −gm 2−bm c 2ln (g −B m −Cv m )+C1 代入已知数据得:
y =−v 4.87676×10−3− 1.06111(−4.87676)2ln (1+−4.87676×10−3v 1.06111
) 当v=40ft/s 时,可利用上式算出y 值(即v 的一阶常微分方程):
齐次解的形式为v =Ae qt ,其中q=-4.87676×10−3 A =-217.59 ;
特解为v=217.59 ;
综上,v (t )=−217.59e −4.87676×10
−3t +217.59 故有:y (t )=∫v (t )dt =∫(−217.59e −4.87676×10
−3t +217.59)dt =91.44t 0t 0
V(t)=13.8m/s=44.0ft/s
【结果分析】
结合题目的约束条件作图分析,判断下沉距离S=300ft时速度是否大于
40ft/s或判断速度达到40ft/s时下沉的距离是否大于300ft(我选择用速度是否大于40ft/s判断),从而判断圆桶与海底冲撞时是否会破裂。
从依据数值解图的中可见,圆桶还没沉到海底时,其速度已达到规定的圆桶不破裂的最大速度。由解析解算出的数据也说明,当下落高度达到300ft时,速度已达44.0ft/s超过规定速度,故圆桶会破裂。工程师们赢了官司。
从速度-时间曲线可以看到,开始时圆桶的速度随着时间逐渐增大,加速度逐渐减小,可见圆桶做的是加速度逐渐减小的变加速运动。时间充分大后
(t>1500s)后,圆桶的加速度减至0,速度趋于一个定值,约为275m/s。
【题目2】一只小船渡过宽为d 的河流,目标是起点A 正对着的另一岸B 点。
已知河水流速为v1 与船在静水中的速度之比为k。
(1)建立描述小船航线的数学模型,求其解析解;
(2)设d=100m,v1=1m/s,v2=2m/s,用数值解法求渡河所需的时间、任
意时刻小船的位置及航行曲线,作图,并与解析解比较。
(3)若流速v1=0,0.5,1.5,2(m/s),结果将如何?
【问题分析】
假设航行者并不知道水流速度。设时间为t,小船坐标为(x,y)。
据题目所给公式,可以列如下方程:
dx dt =v1−
v x
√x2+y2
dy dt =
v y
√x2+y2
初值为:(x,y)=(0,d) 【程序运算】
(1)运用解析法
将上两式相除得:dx
dy =v1
v2
√(x
y
)2+1+x
y
令x/y=p<0, v1/v2=k
有:dp
dy
y+p=k√p2+1+p
整理得:
√p2+1=k dy
y
求解得:ln(√p2+1+p)=k ln(cy)