(一)矩阵 特征 多项式、特征值、特征向量,稀疏矩阵
1、测试函数eig,poly,poly2str
format short g
A=[1 2 3;4 5 6;7 8 9]
A =
1 2 3
4 5 6
7 8 9
p=poly(A)
p =
1 -15 -18 -1.7567e-14
poly2str(p,’x’)
ans =
‘ x^3 – 15 x^2 – 18 x – 1.7567e-14’
d=eig(A)
d =
16.117
-1.1168
-9.7592e-16
A=[0 0 5 0;3 0 3 0;0 0 0 1;0 4 3 0]
A =
0 0 5 0
3 0 3 0
0 0 0 1
0 4 3 0
S=sparse(A)
S =
(2,1) 3
(4,2) 4
(1,3) 5
(2,3) 3
(4,3) 3
(3,4) 1
S=sparse([1 2 2],[1 3 2],[6 7 8],5,5)
S =
(1,1) 6
(2,2) 8
(2,3) 7
full(S)
ans =
6 0 0 0 0
0 8 7 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
s=sparse(3,4)
s =
全零稀疏矩阵: 3×4
full(s)
ans =
0 0 0 0
0 0 0 0
0 0 0 0
B=[1 2 3;4 5 6;7 8 9]
B =
1 2 3
4 5 6
7 8 9
d=[-2,1,3] ;
S=spdiags(B,d,3,6)
S =
(3,1) 7
(1,2) 2
(2,3) 5
(1,4) 3
(3,4) 8
(2,5) 6
(3,6) 9
full(S)
ans =
0 2 0 3 0 0
0 0 5 0 6 0
7 0 0 8 0 9
( 二 )专题实验(迭代法求解线性方程组)
1、编写Jacobi迭代格式解线性方程组的函数;
function X_solve=myJacobi(A,b,X0,mytol)
%A为系数矩阵.
%b为右端常向量.
%X0为初始层,默认取0.
%mytol表示允许误差, 要求默认值为1e-6.
%nargin表示输入参数个数
X=diag(A);D=diag(X);L=-tril(A,-1);U=-triu(A,1);X1=ones(size(b));n=1;
if nargin==3 %如果参数=3,
mytol=1e-6;
elseif nargin==2 %如果参数=2
X0=zeros(size(b));
mytol=1e-6;
else %如果参数
Original: https://blog.csdn.net/m0_62883956/article/details/126980290
Author: 黏豆包儿~
Title: 【matlab】解线性方程组的迭代方法
原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/762560/
转载文章受原作者版权保护。转载请注明原作者出处!