数值分析第一次作业解答

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

数值分析第一次作业解答
1. 1 给出MATLAB 帮助信息的使用方法。

1.2. 给出生成向量{ }的指令
补充题:
下段程序执行时,会发生错误,matlab 的错误提示为:“Error using ==> mtimes ,Inner matrix dimensions must agree.”。

请指出错误所在,并修改之。

clear all
vector = 1:100;
total = 0;
for ii= vector,
total = total+ vector * vector ;
end
total
书上习题:4,5,6
222
12...,10,,
习题(1)
1:
(a)一个问题的病态性如何,与求解它的算法有关系。

×;
(b)无论问题是否病态,好的算法都会得到它好的近似解。

×;
(c)计算中使用更高的精度,可以改善问题的病态性。

×;
(d)用一个稳定的算法计算一个良态问题,一定会得到他好的近似解。

√;
(e)浮点数在整个数轴上是均匀分布。

×;
(f)浮点数的加法满足结合律。

×
(g)浮点数的加法满足交换律。

×;
(h)浮点数构成有限集合。

√;
(i)用一个收敛的算法计算一个良态问题,一定得到它好的近似解。

√2:程序
t=0.1;
n=1:10;
e=n/10-n*t
e = 1.0e-015 *[ 0 0 -0.0555 0 0 -0.1110 -0.1110 0 0 0]
由舍人误差造成n=3,6,7时的结果不为零。

3:两种等价的一元二次方程求解公式
2224b x a
c x b ac
-±==- 对
a=1,b=-100000000,c=1,应采用哪种算法?
A=[1,-100000000,1];
roots(A);
可得: X1=100000000;x2=0
a=1;b=-100000000;c=1;
x11=(-b-sqrt(b*b-4*a*c))/(2*a) x12=(-b+sqrt(b*b-4*a*c))/(2*a) x21=2*c/(-b-sqrt(b*b-4*a*c)) x22=2*c/(-b+sqrt(b*b-4*a*c))
由第一种算法:
X1=100000000;x2=7.45058×910- 由第二种算法:
X1=13417728;x2=-1.0×810 原因:太小的数作分母。

4:程序:
function y=tt(x)
s=0;
t=x;
n=1;
while s+t~=s;
s=s+t;
t=-x^2/((n+1)*(n+2))*t n=n+2;
end
n
t
(a)t小于计算机的计算精度。


(21)
(21)!
n
t
eps n
+

+)
(b)x=/2
π; n=23
x=11/2
π; n=75
x =21/2
π; n=121
5:
function y=tt1(x) s=0;
t=1;
n=1;
while s+t~=s; s=s+t; t=x/n*t; n=n+1; end
n
s
计算结果:
X=-100; 258.144710x e =⨯ X=-50; 32.041810x e =⨯
分析:
改写程序
function y=tt1(x) s=0;
t=1;
n=1;
for n=1:100;
t=x/n*t;
s=s+t;
y(n)=s;
end
plot(y)。

相关文档
最新文档