数值线性代数大作业报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数值线性代数实验
大报告
指导老师:赵国忠
姓名:1108300001 刘帅
1108300004 王敏
1108300032 郭蒙
一、实验名称:16题P75上机习题
二、实验目的:编制通用的子程序,完成习题的计算任务
三、实验内容与要求:
P75上机习题
先用熟悉的计算机语言将算法2.5.1编制成通用的子程序,然后再用所编制的子程
序完成下面两个计算任务:
(1) 估计5到20阶Hilbert 矩阵的无穷范数条件数。
(2) 设A n = 1
1...111...
..........
...
1-1 (01)
-- 先随机地选取x ∈R n ,并计算出b=A
n x;然后再用列主元Gauss 消去法求解该方程组,假定计算解为∧x .试对n 从5到30估计计算解∧
x 的精度,并且与真实的相对误差作比较。
四、 实验原理:
(1)矩阵范数(martix norm )是数学上向量范数对矩阵的一个自然推广。利用for
循环和cond (a )Hilbert 求解Hilbert 矩阵的无穷范数,再利用norm(a,inf)求矩阵的无穷范数条件数。
(2)本题分为4步来求解。先运用rand 随机选取x ∈R n
,输入A n 矩阵,编制一个M 文件计算出b 。第二步用列主元高斯消去法求解出方程的解X2。第三步建立M 文件: soluerr.m 估计计算解∧x 的精度。第四步, 建立M 文件: bijiao.m ,与真实相对误差作比较。
五、 实验过程:
(1)程序:
clear
for n=5:20
for i=1:n
for j=1:n
a(i,j)=1/(i+j-1);
end
end
c=cond(a);
f=norm(c,inf);
fprintf('n=%3.0f\nnorm(c,inf)%e\n',n,f) end
运行结果:
n= 5
norm(c,inf)4.766073e+005
n= 6
norm(c,inf)1.495106e+007
n= 7
norm(c,inf)4.753674e+008
n= 8
norm(c,inf)1.525758e+010
n= 9
norm(c,inf)4.931542e+011
n= 10
norm(c,inf)1.602467e+013
n= 11
norm(c,inf)5.224376e+014
n= 12
norm(c,inf)1.698855e+016
n= 13
norm(c,inf)3.459404e+017
n= 14
norm(c,inf)4.696757e+017
n= 15
norm(c,inf)2.569881e+017
n= 16
norm(c,inf)7.356249e+017
n= 17
norm(c,inf)4.362844e+017
n= 18
norm(c,inf)1.229633e+018
n= 19
norm(c,inf)9.759023e+017
n= 20
norm(c,inf)1.644051e+018
(2)程序:
M文件:matrix1.m
function [a,b,x1]=matrix1(n) format long
A1=-1*ones(n,n)
A2=tril(A1)
for i=1:n
A2(i,i)=1
end
A2(:,n)=1
a=A2
x1=rand(n,1)
b=A2*x1
end
运行结果:
>> A1 =
-1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1
A2 =
-1 0 0 0 0 -1 -1 0 0 0 -1 -1 -1 0 0 -1 -1 -1 -1 0 -1 -1 -1 -1 -1
A2 =
1 0 0 0 0 -1 -1 0 0 0 -1 -1 -1 0 0 -1 -1 -1 -1 0 -1 -1 -1 -1 -1
A2 =
1 0 0 0 0
-1 -1 -1 0 0 -1 -1 -1 -1 0 -1 -1 -1 -1 -1
A2 =
1 0 0 0 0 -1 1 0 0 0 -1 -1 1 0 0 -1 -1 -1 -1 0 -1 -1 -1 -1 -1
A2 =
1 0 0 0 0 -1 1 0 0 0 -1 -1 1 0 0 -1 -1 -1 1 0 -1 -1 -1 -1 -1
A2 =
1 0 0 0 0 -1 1 0 0 0 -1 -1 1 0 0 -1 -1 -1 1 0 -1 -1 -1 -1 1
A2 =
1 0 0 0 1 -1 1 0 0 1 -1 -1 1 0 1 -1 -1 -1 1 1 -1 -1 -1 -1 1
a =
-1 1 0 0 1 -1 -1 1 0 1 -1 -1 -1 1 1 -1 -1 -1 -1 1
x1 =
0.814723686393179
0.905791937075619
0.126986816293506
0.913375856139019
0.632359246225410
b =
1.447082932618589
0.723427496907850
-0.961169560949882
-0.301767337397875
-2.128519049675914
a =
1 0 0 0 1 -1 1 0 0 1 -1 -1 1 0 1 -1 -1 -1 1 1 -1 -1 -1 -1 1
b =
1.447082932618589
0.723427496907850
-0.961169560949882
-0.301767337397875
-2.128519049675914
x1 =