matlab实验一

实验一 MATLAB矩阵处理
实验要求:
为达到理想的实验效果,同学们务必做到:
1.实验前认真准备,要根据实验目的和实验内容,复习好实验中可能要用到的命令,想好编程的思路,做到胸有成竹,提高上机效率。
2.实验过程中积极思考,要深入分析命令、程序的执行结果以及各种屏幕信息的含义、出现的原因并提出解决办法。
3.实验后认真总结,要总结本次实验有哪些收获,还存在哪些问题,并写出实验报告。实验报告应包括实验目的、实验内容、流程图(较大程序)、程序(命令)清单、运行结果以及实验的收获与体会等内容。
实验目的:
1.掌握生成特殊矩阵的方法
2.掌握矩阵处理的方法
3.掌握用矩阵求逆法解线性方程组的方法
实验内容:
1.设有分块矩阵,其中E、R、O、S分别为单位矩阵、随机矩阵、零矩阵和对角阵,试通过数值计算验证。
答:步骤1:列出A内的各个矩阵
E=eye(3);

R=rand(3,2);
o=zeros(2,3);
S=diag([1,2])

S =

 1     0
 0     2

步骤2:输出矩阵A

A=[E,R;o,S;]
A =

1.0000         0         0    0.2785    0.9649
     0    1.0000         0    0.5469    0.1576
     0         0    1.0000    0.9575    0.9706
     0         0         0    1.0000         0
     0         0         0         0    2.0000

步骤3:将AA与矩阵A和题中的大致相比较,易知AA中的E,O均未变,S变为S^2,猜测可能符合

A*A

ans =

1.0000         0         0    0.5570    2.8947
     0    1.0000         0    1.0938    0.4728
     0         0    1.0000    1.9150    2.9118
     0         0         0    1.0000         0
     0         0         0         0    4.0000

步骤4:计算A=[E,R+RS;o,SS;]与AA的结果相对比,可知符合
A=[E,R+R
S;o,S*S;]

A =

1.0000         0         0    0.5570    2.8947
     0    1.0000         0    1.0938    0.4728
     0         0    1.0000    1.9150    2.9118
     0         0         0    1.0000         0
     0         0         0         0    4.0000

2.建立一个5×5矩阵,求它的行列式值、迹、秩和范数。

答:
步骤1:建立5*5的矩阵A
A=diag([1,2,3,4,5])

A =

 1     0     0     0     0
 0     2     0     0     0
 0     0     3     0     0
 0     0     0     4     0
 0     0     0     0     5 

步骤2:求行列式的值,迹,秩,和范数
det(A)

ans =

120
rank(A)

ans =

 5

trace(A)

ans =

15
计算向量A的1—范数

norm(A,1)

ans =

1.0833

计算向量A的2—范数
norm(A)

ans =

 5 

计算向量A的inf—范数
norm(A,inf)

ans =

1.0833

3.产生5阶希尔伯特矩阵H和5阶帕斯卡矩阵P,且求其行列式的值Hh和Hp以及它们的条件数Th和Tp,判断哪个矩阵性能更好。为什么?

答:
步骤1:产生5阶希尔伯特矩阵H和5阶帕斯卡矩阵P
H=hilb(5)

H =

1.0000    0.5000    0.3333    0.2500    0.2000
0.5000    0.3333    0.2500    0.2000    0.1667
0.3333    0.2500    0.2000    0.1667    0.1429
0.2500    0.2000    0.1667    0.1429    0.1250
0.2000    0.1667    0.1429    0.1250    0.1111

P=pascal(5)

P =

 1     1     1     1     1
 1     2     3     4     5
 1     3     6    10    15
 1     4    10    20    35
 1     5    15    35    70 

步骤2:求其行列式的值Hh和Hp

Hh=det(H)

Hh =

3.7493e-12

HP=det§

HP =

 1 

步骤3:求其三种条件数Th和Tp
计算A的1—范数下的条件数。
Th=cond(H,1)

Th =

9.4366e+05

Tp=cond(P,1)

Tp =

   15624 

计算A的2—范数数下的条件数。

Th=cond(H)

Th =

4.7661e+05

Tp=cond§

Tp =

8.5175e+03

计算A的∞—范数数下的条件数。

Th=cond(H,inf)

Th =

9.4366e+05

Tp=cond(P,inf)

Tp =

   15624 

由结果可知,三种条件数TP均小于TH,故帕斯卡矩阵更好,条件数越大,矩阵越病态 。
4. 已知求A的特征值及特征向量,并分析其数学意义。

答:
步骤1:输入矩阵A
A=[-29,6,18;20,5,12;-8,8,5;]

A =

-29 6 18
20 5 12
-8 8 5

步骤2:求特征向量和特征值

[V,D]=eig(A)

V =

0.7130    0.2803    0.2733

-0.6084 -0.7867 0.8725
0.3487 0.5501 0.4050

D =

-25.3169 0 0
0 -10.5182 0
0 0 16.8351

步骤3:数学关系
A*[0.7130;-0.6084 ;0.3487 ;]

ans =

-18.0508
15.4024
-8.8277

-25.3169 *[0.7130;-0.6084 ;0.3487 ;]

ans =
-18.0509
15.4028
-8.8280

根据上式,矩阵的特征值有三个-25.3169, -10.5182 ,16.8351 ;矩阵的特征向量有三个 :[0.7130,-0.6084 ,0.3487 ],[0.2803,-0.7867 ,0.5501] ,
[ 0.2733 ,0.8725 ,0.4050] 取出第一个特征向量,与矩阵A作矩阵相乘,可发现其结果,与对应的特征值-25.3169与矩阵第一个特征向量相乘的结果,正好相等: 取第2个特征向量与矩阵A相乘,结果同样与特征值-10.5182乘以第二个特征向量相等 : 取第3个特征向量与矩阵A相乘,结果同样与特征值16.8351乘以第3个特征向量相等 因此,这个例子里可以得出如下数学结论:对于矩阵A,有3个特定输入(三个特征向量)x1和x2,x3,会按固定比例放大(或缩小),放大倍数分别为-25.3169 ,-10.5182 ,16.8351 矩阵A的意义就是线性变换特,征向量x就是线性变换前后总是保持平行的方向而特征值λ就是特征向量x变换之后Ax被拉伸的倍数:Ax=λx

  1. 下面是一个线性方程组:

(1)求方程的解。
A=[1/2,1/3,1/4;1/3,1/4,1/5;1/4,1/5,1/6]

A =

0.5000    0.3333    0.2500
0.3333    0.2500    0.2000
0.2500    0.2000    0.1667

B=[0.95;0.67;0.52]

B =

0.9500
0.6700

0.5200

x=inv(A)*B

x =

1.2000
0.6000
0.6000

(2)将方程右边向量元素b3改为0.53再求解,并比较b3的变化和解的相对变化。
B=[0.95;0.67;0.53]

B =

0.9500
0.6700
0.5300

x=inv(A)*B

x =

3.0000

-6.6000
6.6000
b3的变化很小解的相对变化很大
(3)计算系数矩阵A的条件数并分析结论。
1.计算A的1—范数数下的条件数
cond(A,1)

ans =

2.0150e+03

计算A的2—范数数下的条件数
cond(A)

ans =

1.3533e+03
计算A的inf—范数数下的条件数
cond(A,inf)

ans =

2.0150e+03

实验收获:
1.复习了单位矩阵、随机矩阵、零矩阵、对角阵、阶尔伯特矩阵和阶帕斯卡矩阵;
2.区分了A^2与A.*A;
3.复习了行列式值、迹、秩和范数的求法;
4.掌握了的特征值及特征向量的求法;
5.学会利用条件数判断矩阵性能的好坏;

  • 4
    点赞
  • 52
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

位沁

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值