《Matlab与数学实验》梁锦桐2007160036 下载本文

内容发布更新时间 : 2024/5/3 2:29:04星期一 下面是文章的全部内容请认真阅读。

bu深圳大学考试答题纸

(以论文、报告等形式考核专用)

二○○ 九 ~二○○ 十 学年度第 一 学期

课程编号 2316000801 学 号

课程名称

Matlab与数学实验

专业年级

主讲教师

仇高新

评分

2007160036

姓名 梁锦桐 07微电一班

教师评语: 题目:

《Matlab与数学实验》期末作业

S??2?

1. 用数值积分公式计算 (结果保留小数点后8位):

(1) 取积分步长h??/2, 用梯形公式计算S= 6.24764132 。

>> format long; >> x=0:pi/2:2*pi;

>> trapz(x,(1-(0.15.^2)*(sin(x)).^2).^0.5)

(2) 要求相对误差为10-6, 用Simpson公式S= 6.24769188 ,Matlab命令是___

quad('(1-(0.15.^2)*(sin(x)).^2).^0.5',0,2*pi)_______________________.

>> format long;

01?0.152sin2θdθ>>quad('(1-(0.15.^2)*(sin(x)).^2).^0.5',0,2*pi)

2. 设y??(x)?y(x)sinx?0,y(0)?1,y?(0)?0,用数值解法算出 y(1)= 1.1635 ,你用的方法是

Runga-Kutta

方法

,调用的

Matlab

命令是

[x,t]=ode45('verderpol',[0:0.1:1.2],[1,0]) ,算法精度为 4阶 。 解:建立函数文件verderpol.m function xprime = verderpol(x,t)

xprime = [t(2); t(1)*sin(x)];

运行命令:[x,t]=ode45('verderpol',[0:0.1:1.2],[1,0])

x???y(x)?y(x)sinx?ye?0,y(0)?1,y?(0)?0, 用数值解法算出y(1)= 0.2713 3. 设

(精确到4位小数), 你用的方法是 Runga-Kutta 方法 ,调用的 Matlab命令是

[x,t]=ode45('verderpol2',[0:0.1:1.2],[1,0]) ,算法精度为 4~5阶 。 解:建立函数文件 verderpol2.m function xprime = verderpol2(x,t)

xprime = [t(2);t(2)*sin(x)-t(1)*exp(x)];

运行命令:[x,t]=ode45('verderpol2',[0:0.1:1.2],[1,0])

第1页 共4页

然后在Matlab中用命令:[x,t]=ode45('verderpol2',[0:0.1:1.2],[1,0])

4. 用电压V=14伏的电池给电容器充电,电容器上t时刻的电压满足:

?,

其中V0是电容器的初始电压,τ是充电常数。试用下列数据确定V0和τ。 t(秒) v(t) 0.3 5.6873 0.5 6.1434 1.0 7.1633 2.0 8.8626 4.0 11.0328 7.0 12.6962 tv(t)?V?(V?V0)exp(?) 你用的方法是 线性最小二乘法 ,结果是V0= 5.0001 ,τ= 3.6165 。

5. 小型火箭初始质量为900千克,其中包括600千克燃料。火箭竖直向上发射时燃料以15千克/秒的速率燃烧掉,由此产生30000牛顿的恒定推力。当燃料用尽时引擎关闭。设火箭上升的整个过程中,空气阻力与速度平方成正比,比例系数为0.4(千克/米)。重力加速度取9.8米/秒2. A. 建立火箭升空过程的数学模型(微分方程);

B. 求引擎关闭瞬间火箭的高度、速度、加速度,及火箭到达最高点的时间和高度。 解:A.火箭升空应分为两个过程:1.有燃料产生向上推力的过程:2.燃料用完,引擎关闭的运动过程: 对于第一个过程:持续的时间为:

向上加速过程火箭的质量为:M=900-15*t (1) t≤40s 空气阻力与速度平方成正比,即 ,方向是竖直向下 根据牛顿第二定律得

在加速过程有:F-f-M*g=M*a 即

(2)

(3 ) 和

(4)

F 联立(1)、(2)、(3)和(4)得:

代入数值得:

即:

, 0 ≤ t≤40s

初始条件为:y(0)=0 ; y’(0)=0

Mg f 向上加速过程 对于第二个过程:t>40

如右图所示:火箭只受到重力和阻力的作用

由于燃料已经用完,则剩余质量为:m=900-600=300kg

对物体进行受力分析得:即:

代入数值得 :

(5)

(6)

mg t>40 (7)

f 即:

第2页 共4页

t>40 (8)

初始条件由第一个过程的终值给出。

B.在Matlab中计算得,引擎关闭瞬间火箭的高度8323米,速度259米/秒,引擎关闭前瞬间加速度0.7709米/秒2,引擎关闭后瞬间加速度为,–99.2291米/秒2;到达最高点的时间51秒,高度9192米。M文件为,answer5.m

6. 冰淇淋的下部为椎体,上部为半球。设它由锥和球面x2?y2?(z?1)2?1围成,用蒙特卡罗方法计算它的体积。

解:方程x2?y2?(z?1)2?1是一个以(0,0,1)为球心,半径为1,所求的椎体和球面围成的体积包含在球体里面,设计一个与球相切的正方体,边长为2,正方体的体积为8. 在正方体内随机的投点,则点落在圆锥和球面围城的体积里面的概率应该等于圆锥和球面围城的体积和正方体的体积之比。假说总投点数为n,落在圆锥和球面围城的体积内的点数为M,则应有:

=>

在matlab里面编写随机点进行试验求出所求的体积为:3.1315 ,程序如下: answe6.m

n=100000;a=0;b=1;m=0; for i=1:n

x=rand(1)*2-1;y=rand(1)*2-1;z=rand(1)*2; if((x^2+y^2)^0.5<=z && x^2+y^2+(z-1)^2<=1) m=m+1; end end

fprintf('计算出来的体积为:%f\\n',8*m/n);

7. 容器盛满水后,低端直径为d0的小孔开启。根据水力学知识,当水面高度为h时,水从小孔中流出的速度v?0.62gh(g为重力加速度,0.6为孔口收缩系数)。

若容器为倒圆锥形,现测得容器高和上底面直径均为1.2m,小孔直径为3cm,问水从小孔中流完需要多少时间?2分钟时水面高度是多少?

解:容器中总共的水的体积为:积为:

,高度为h; ; 则有:

,经过t时间后,假设从容器中流出的水的体积为

; (1)

,剩余水的体

而: (2) ;; (3)

将(2)、(3)代入(1)得

=

; (4)

对式(4)两边求导得: (5)

第3页 共4页