Matlab《数学实验》上机指导书 下载本文

实验三 放射性废料的处理问题

一、实验目的

巩固和理解微分方程理论及其应用。

二、预备知识

常微分方程理论和Mathematica解方程的命令。

三、问题的提出

美国原子能委员会以往处理浓缩放射性废料的方法,一直是把它们装入密封的圆桶里,然后扔到水深90多米的海底。生态学家和科学家们表示担心,怕圆桶下沉到海底时与海底碰撞而发生破裂,从而造成核污染。原子能委员会分辩说这是不可能的。为此工程师们进行了碰撞实验,发现当圆桶下沉到海底时的速度超过12.2 m/s,圆桶与海底碰撞会发生破裂。为避免圆桶碰裂,需要计算圆桶沉到海底时的速度是多少?这时已知圆桶重为239.46 kg,体积为0.2058 m3,海水密度为1035.71 kg/m3。如果圆桶下沉到海底时的速度小于12.2 m/s,就说明这种方法是可靠的;否则就要禁止用这种方法来处理放射性废料。假设水的阻力与速度大小成正比,其正比例常数为0.6。 (1)根据问题建立数学模型。

(2)根据数学模型求解的结果,判断这种处理废料的方法是否合理?

四、问题分析及建立模型 圆桶运动规律:

F合?G?F?f(1)

dvd2s?m2 F合?ma?mdtdt(2)

其中G?mg,F??gV

dsf?kv?k

dt 由题设可得圆桶的位移和速度分别满足如下微分方程:

6

?d2sds?m2?mg??gV?kdt?dt?ds?v(0)?0??dtt?0 (3) ?s(0)?0??dvm?mg??gV?kv (4)

dt

?ds?22、若f?kv?k??,类似上面,可得到这时圆桶的速度分别满

?dt?足如下微分方程:

2dvm?mg??gV?kv2 dt五、计算过程

1、由(1)(2)(3)(4)以及题设的初始数据,通过如下Mathematica程序就可以求出圆筒的位移和速度的方程。 源程序:

In[1]:=m = 239.46; w = 0.2058; g = 9.8; p = 1035.71; k = 0.6;

DSolve[{m*s''[t] == m*g - p*g*w - k*s'[t], s[0] == 0, s'[0] == 0}, s[t], t] DSolve[{m*v'[t] == m*g - p*g*w - k*v[t], v[0] == 0}, v[t], t] Out[1=

7

st2.718280.00250564t171511.0.00250564t171511.2.718280.00250564tt429.7442.71828 (5)

0.00250564tvt429.744429.7442.718280.00250564t (6)

2、由(5)及S(t)=90m,由下面程序

FindRoot902.718281828459045`171510.99243459993`171510.9924345999`2.718281828459045`0.002505637684790779`429.7444059999998`2.718281828459045`0.002505637684790779`t,13t0.002505637684790779`ttt,

得到:t=12.994 ,带入(6),运行如下命令

vt_429.7444059999998`429.7444059999998`2.718281828459045`0.002505637684790779`t0.002505637684790779`t;v12.9994

得V=13.772>12.2,此时说明此法处理废料不行。 六、结果分析

在实际情况中k 与 v 的关系很难确定,所以上面的模型有它的局限性,且对不同的介质比如在空气中和在水中k 与 v 的关系就不同。在一般情况下,k应是v的函数,即k=k(v),至于 是什么样的函数很难确定。 七、模型推广

这个模型可以推广到其他方面,比如说一个物体从高空落向地面的道理也是一样的,尽管物体越高,落到地面的速度也越大,但决不会无限大。

8

实验四 路程估计问题

一、实验目的

能用数学软件进行数据拟合。

二、预备知识

多元函数的极值求法;线性拟合的最小二乘法原理。

三、问题的提出

外出旅行或行军作战等,都可能涉及到两地路程的估计问题。当身边带有地图时,这似乎是件很容易的事。然而,从地图上量出的距离却是两地的直线距离d,你能由此估计出两地的实际路程s吗?建立s关于d的模型:s?f(d)。

(1)要确定s与d的近似函数关系,必须收集若干s及与之相应的d的具体数据,通过分析找出规律。这里将《中国地图》中量得四川省彭州市到其他几个城市的直线距离,并按比例尺(1cm为20km)进行转换,以及从到汽车站了解到的对应的实际路程的有关数据列于表2-2。

表2-2 城市间直线距离和实际路程

彭州市 → 地图直线 成郫都江什德新广温崇都1.8 36 县1.08 堰1.55 邡1.32 阳2.3 繁0.75 汉1.64 江1.7 庆2.38 距离(cm) 地图转换距d(km) 实际路程42 s(km) 30 58 43 68 16 43 50 65 离21.6 31 26.4 46 15 32.8 34 47.6 (2)启动数学软件,将上表中d与s两组数据,按拟合时所需形式输入。 (3)画出数据散布图,观察它们是否大致在一条直线附近。

(4)进行直线拟合,并在同一图中显示拟合直线与数据点。观测拟合情况,并记下所得到的模型(称为经验模型)。

(5)在只作粗略估计的情况下,为便于计算,若将上面得到的模型修改成s?1.5d?b(简单模型)行吗?根据表中数据,取b=3,试画出简单模型与样本数据点的图形,并与(4)

9

所得到的图形相对照。

(6)试计算由两个模型得到的估计值与实际值的差(残差),以大致观测一下两个模型的差异。在只作粗略估计的前提下,你愿意用哪个模型?

实验解答

四、问题分析与建立模型

问题的关键在于收集数据,然后描出数据散布图,通过观测,决定用什么函数去拟合。由所给数据,发现它们大致在一条直线附近,故用直线拟合,又因d=0时,S必为零,因此,不妨设模型为S=ad。 五、计算过程

1、x={36,21.6,31,26.4,46,15,32.8,34,47.6};

y={42,30,58,43,68,16,43,50,65};

shu=ListPl ot[data,PlotStyle?PointSize[0.02]] (*作数据散布点*)

s=Fit[data,{d},d]; (*拟合直线*) Print[‘‘s=’’s]

p=Plot[s,{d,0,50}] (*作拟合直线图*)

Show[shu,p] (*在同一图上观测拟合效果*)

Out[6]=

S=1.42852d

10