数值分析上机作业
- 格式:doc
- 大小:100.50 KB
- 文档页数:6
昆明理工大学工科研究生《数值分析》上机实验
学院:材料科学与工程学院
专业:材料物理与化学
学号:2011230024
姓名: 郑录
任课教师:胡杰
P277-E1
1.已知矩阵A=
10787
7565
86109
75910
⎡⎤
⎢⎥
⎢⎥
⎢⎥
⎢⎥
⎣⎦,B=
23456
44567
03678
00289
00010
⎡⎤
⎢⎥
⎢⎥
⎢⎥
⎢⎥
⎢⎥
⎢⎥
⎣⎦
,错误!未找到引用源。
=
11/21/31/41/51/6 1/21/31/41/51/61/7 1/31/41/51/61/71/8 1/41/51/61/71/81/9 1/51/61/71/81/91/10 1/61/71/81/91/101/11⎡⎤⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦
(1)用MA TLAB函数“eig”求矩阵全部特征值。
(2)用基本QR算法求全部特征值(可用MA TLAB函数“qr”实现矩阵的QR分解)。解:MA TLAB程序如下:
求矩阵A的特征值:
clear;
A=[10 7 8 7;7 5 6 5;8 6 10 9;7 5 9 10];
E=eig(A)
输出结果:
求矩阵B的特征值:
clear;
B=[2 3 4 5 6;4 4 5 6 7;0 3 6 7 8;0 0 2 8 9;0 0 0 1 0];
E=eig(B)
输出结果:
求矩阵错误!未找到引用源。的特征值:
clear; 错误!未找到引用源。=[1 1/2 1/3 1/4 1/5 1/6; 1/2 1/3 1/4 1/5 1/6 1/7; 1/3 1/4 1/5 1/6 1/7 1/8; 1/4 1/5 1/6 1/7 1/8 1/9;1/5 1/6 1/7 1/8 1/9 1/10; 1/6 1/7 1/8 1/9 1/10 1/11]; E=eig(错误!未找到引用源。)
输出结果:
(2)A=
10
7877565861097
5
9
10
第一步:A0=hess(A);[Q0,R0]=qr(A0);A1=R0*Q0 返回得到:
第二部:[Q1,R1]=qr(A1);A2=R1*Q1
第三部:
[Q2,R2]=qr(A2);A3=R2*Q2
现在收缩,继续对A3的子矩阵错误!未找到引用源。=29.8329
3.44110.00003.4411
4.30530.16110
0.1611
0.8516
-- 进行累世变换,得到(假设收缩后的矩阵为C6)
C6=29.8329
3.44110.00003.4411
4.30530.16110
0.1611
0.8516
-- 这是进行了6步qr 算法所得的结果。故求的A 的近似特征值为错误!未找到引用源。30.2886,错误!未找到引用源。,错误!未找到引用源。,错误!未找到引用源。0.0102。而A 的特
征值是错误!未找到引用源。0.0102错误!未找到引用源。30.2886
同理,用类似的方法可求矩阵B 和错误!未找到引用源。的特征值,但过程过于繁琐,不再一一求解。
2用梯形公式、辛普森和Newton-Cotes 求积公式计算定积分⎰
π=
2
/0
I e x sin d x ,取精度
4
10
-,作出它们的积分图,并与精确值进行比较;
解 (1)用梯形求积公式计算定积分. 输入程序
>> h=pi/500; x=0:h:pi/2; y=exp(sin(x));
zt=trapz(x,y), ztc=cumtrapz(x,y), plot(x, ztc,'ro')
运行后屏幕显示用函数trapz 和cumtrapz 分别计算结果zt 、ztc 分别如下
zt =
3.10437572798742 ztc =
Columns 1 through 3
0 0.00630298652792 0.01264569951380
………………………………………………………………………..
Columns 250 through 251
3.08729642810745 3.10437572798742
(2)用辛普森求积公式计算定积分. 输入程序
>> syms x
L= inline(' exp(sin(x))');
[QS,FCNTS] =quad(L,0, pi/2,1.e-4,2)
运行后屏幕显示用辛普森求积公式计算定积分的值QS和递归次数FCNTS分别如下QS = FCNTS =
3.10438133817254 13
(3)用Newton-Cotes求积公式计算定积分. 在MATLAB6.5中输入程序
>> syms x
L= inline(' exp(sin(x))');
[Q8,FCNT8] = quad8(L,0, pi/2,1.e-4,3)
运行后屏幕显示用Newton-Cotes求积公式计算定积分的值Q8和递归次数FCNTS分别如下Q8 = FCNT8 =
3.10437901785555 33
(4)输入求定积分的精确值的程序
>> syms x
y=exp(sin(x)); F=int(y,0,pi/2), Fj=double(F)
wzt=abs( Fj- zt), wQS = abs(Fj- QS), wQ8 = abs(Fj- Q8)
运行后屏幕显示计算的定积分值F和近似值F j,梯形公式、辛普森和Newton-Cotes求积公式计算定积分的值与F j的绝对误差wztc, wQS和wQ8如下
Warning: Explicit integral could not be found.
> In C:\MATLAB6p5p1\toolbox\symbolic\@sym\int.m at line 58
F =
int(exp(sin(x)),x = 0 .. 1/2*pi)
Fj = wzt =
3.10437901785556 3.289868133471430e-006