实验二 matlab矩阵分析与处理
目录
实验二 matlab矩阵分析与处理 2
1.1实验目的 3
1.2实验内容 3
1.3流程图 4
1.4程序清单 4
1.5运行结果及分析 6
1.6实验的收获与体会 10
1.1实验目的
1,掌握生成特殊矩阵的方法;
2,掌握矩阵分析的方法;
3,用矩阵求逆法求解线性方程组。
1.2实验内容
1.3流程图
1.4程序清单
%% 实验二
clc
clear
%% 1
E=eye(3,3);
R=rand(3,3);
O=zeros(3,3);
S=diag([1,2,3]);
A=[E,R;O,S];
if(A^2==[E,R+R*S;O,S^2])
fprintf('已验证\n\n\n');
else
fprintf('未得到验证\n');
end
%% 2
H=hilb(5);
P=pascal(5);
Hh=det(H);
Hp=det(P);
Th=cond(H);
Tp=cond(P);
if(abs(Th-1)<abs(Tp-1))
fprintf('希尔伯特矩阵性能好\n');
else
fprintf('帕斯卡矩阵性能好\n');
end
%% 3
fprintf('\n5x5矩阵\n');
J=rand(5,5)*10
fprintf('\n行列式\n');
J_v=det(J) %
fprintf('\n迹\n');
J_t=trace(J) %
fprintf('\n秩\n');
J_z=rank(J)%
fprintf('\n范数\n');
J_n=norm(J)%
%% 4
fprintf('\nA\n');
A=[-29 6 18;20 5 12;-8 8 5]
[V,D]=eig(A);
fprintf('\n特征值%d\n',D(1,1));
fprintf('\n特征向量[%d %d %d]\n\n',V(:,1));
fprintf('\n特征值%d\n',D(2,2));
fprintf('\n特征向量[%d %d %d]\n\n',V(:,2));
fprintf('\n特征值%d\n',D(3,3));
fprintf('\n特征向量[%d %d %d]\n\n',V(:,3));
fprintf('\n\n');
%% 5
A=[2 3 4;3 4 5; 4 5 6];
fprintf('\n系数矩阵A\n');
A=1./A
fprintf('\nb\n');
b=[0.95; 0.67;0.52]
%
fprintf('\n(1)的解:\n');
X=A^-1*b
%(2)
fprintf('\n(2)的解:\n');
b(3)=0.53;
X2=A^-1*b
%(3)
fprintf('\nA的条件数:\n');
tjs=cond(A)
%% 6
fprintf('\nA:\n');
A=rand(3,3)*10
fprintf('\nsqrtm(A):\n');
sqrtm(A)
fprintf('\nsqrt(A):\n');
sqrt(A)
1.5运行结果及分析
1.6实验的收获与体会
通过本次实验对矩阵的一些求值由了很好的了解,对一些特殊矩阵也掌握了其生成方法。特别是对矩阵函数的一些区别有了一定的了解,通过这次实验,相信在以后的操作中不会出现对矩阵函数的混淆。但是对矩阵的性能知识还是不很了解,当一个矩阵性能好了又有什么用处呢?通过此次上机操作,掌握了线性方程组的求解方法。相比起线性代数的笔算要方便多了,体会到了计算机软件的强大功能。一条指令,一个符号,一个函数的使用就相当于手算5-10分钟。
因此在将来的学习中,要利用其这个强大的工具。我现在这么觉得:利用好matlab,必定事半功倍。所以,我要好好学习这门课,认真听讲,完成作业和实验,并在课下不断探索matlab这个工具其它的功能和用处。相信这样,一些其它的不易求解的问题,也可以在matlab的帮助下轻松解决。