矩阵代数与MATLAB实现(特征值、广义特征值、)

矩阵代数的相关知识

目录

一、特征值与特征向量

1、特征值与特征向量

2、MATLAB计算

二、广义特征值与广义特征向量

1、广义特征值与广义特征向量

2、MATLAB计算

三、酋矩阵

1、酋矩阵

2、MATLAB计算

四、矩阵的奇异值分解

1、奇异值

2、MATLAB计算

五、托普利兹矩阵(Toeplitz)

1、托普利兹矩阵

2、MATLAB计算

六、汉克尔矩阵(Hankel)

1、汉克尔矩阵

2、MATLAB计算

七、范德蒙矩阵(Vandermonde)

1、范德蒙矩阵

2、MATLAB计算

八、未完待续

总结


提示:以下是本篇文章正文内容,写文章实属不易,希望能帮助到各位,转载请附上链接。

一、特征值与特征向量

1、特征值与特征向量

\textbf{A}\in \mathbb{C}^{n\times n},\textbf{e}\in \mathbb{C}^{n},若标量\lambda和非零向量\textbf{e}满足方程

\textbf{Ae}=\lambda \textbf{e},\textbf{e}\neq 0

则称\lambda是矩阵\textbf{A}的特征值,\textbf{e}是与\lambda对应的特征向量。特征值可能为零,但特征向量一定非零。特征值与特征向量总是成对出现,称(\lambda ,\textbf{e})为矩阵\textbf{A}的特征对。

2、MATLAB计算

%% 特征值与特征向量
A=[1 2 4;0 2 0;2 -1 3];
[V,D]=eig(A) %V的每一列是特征向量,D的对角元素是特征值
A*V(:,1)
-1*V(:,1)

矩阵代数与MATLAB实现(特征值、广义特征值、)_第1张图片

二、广义特征值与广义特征向量

1、广义特征值与广义特征向量

\textbf{A},\textbf{B}\in \mathbb{C}^{n\times n},\textbf{e}\in \mathbb{C}^{n},若标量\lambda和非零向量\textbf{e}满足方程

\textbf{Ae}=\lambda \textbf{B}\textbf{e},\textbf{e}\neq 0

则称\lambda是矩阵\textbf{A}相对于矩阵\textbf{B}的广义特征值,\textbf{e}是与\lambda对应的广义特征向量。特别的,当矩阵\textbf{B}为单位阵时,就成了普通的特征值问题。

2、MATLAB计算

%% 广义特征值与广义特征向量
A=[1 2 4;0 2 0;2 -1 3];
B=[2 -1 1;0 3 -1;2 1 3];
[V,D]=eig(A,B) %V的每一列是广义特征向量,D的对角元素是广义特征值
A*V(:,1)
-1.3011*B*V(:,1)

矩阵代数与MATLAB实现(特征值、广义特征值、)_第2张图片

三、酋矩阵

1、酋矩阵

\textbf{A}\in \mathbb{C}^{n\times n},如果\textbf{AA}^{H}=\textbf{A}^{H}\textbf{A}=\textbf{I},其中'H'表示共轭转置,\textbf{I}表示单位矩阵,则称矩阵\textbf{A}为酋矩阵。  对于酋矩阵,\textbf{A}^{H}=\textbf{A}^{-1}

2、MATLAB计算

%% 酋矩阵验证
A=[(-1-1i)/2 (-1-1i)/2;(1+1i)/2 (-1-1i)/2]
inv_A=inv(A)
A*A'

矩阵代数与MATLAB实现(特征值、广义特征值、)_第3张图片

四、矩阵的奇异值分解

1、奇异值

对于复矩阵\textbf{A}_{m\times n},称\textbf{A}^{H}\textbf{A}的n个特征根的算术根\sigma _{i}=\sqrt{\lambda _{i}}(i=1,2,...,n)为它的奇异值。记矩阵\textbf{A}的奇异值矩阵为

矩阵代数与MATLAB实现(特征值、广义特征值、)_第4张图片

其中,\sigma _{1},\sigma _{2},...,\sigma _{r}是矩阵\textbf{A}的全部非零奇异值。

奇异值分解定理:对于m\times n维矩阵\textbf{A},分别存在一个m\times m维酋矩阵\textbf{U}和一个n\times n维酋矩阵\textbf{V},使得

\textbf{A}=\textbf{U}\sum \textbf{V}^{H}

2、MATLAB计算

%% 矩阵奇异值分解验证
A=[2+i 1-i 2+i;2-i 3+i 2+i]
[U S V]=svd(A) %计算矩阵A的奇异值矩阵S和两个酋矩阵U和V
U*S*V'   %验证分解是否正确
U*U'     %验证U是否为酋矩阵
V*V'     %验证V是否为酋矩阵

矩阵代数与MATLAB实现(特征值、广义特征值、)_第5张图片

五、托普利兹矩阵(Toeplitz)

1、托普利兹矩阵

定义:2n-1个元素构成的n阶矩阵

\textbf{A}=\begin{bmatrix} a_{0} & a_{-1} & a_{-2} & \cdots &a_{-n+1} \\ a_{1} & a_{0} & a_{-1} &\cdots& a_{-n+2} \\ a_{2} & a_{1}& a_{0} &\cdots & a_{-n+3} \\ \vdots & \vdots & \vdots & \ddots & \vdots \\ a_{n-1}& a_{n-2} & a_{n-3}& \cdots & a_{0} \end{bmatrix}

称为Toeplitz矩阵,简称为T矩阵。

例如,当n=4时,由a_{3},a_{2},a_{1},a_{0},a_{-1},a_{-2},a_{-3}这7个元素构成的4阶矩阵为

\textbf{A}_{4\times 4}=\begin{bmatrix} a_{0} & a_{-1} & a_{-2} &a_{-3} \\ a_{1} & a_{0} & a_{-1} &a_{-2} \\ a_{2} & a_{1}& a_{0} & a_{-1} \\ a_{3}& a_{2} & a_{1} & a_{0} \end{bmatrix}

T矩阵也可简记为

A=(a_{-j+i})_{1}^{n}

其中,i,j=1,2,\cdots ,nT矩阵完全由第一行和第一列的2n-1个元素确定。可见,T矩阵中位于任意一条平行于主对角线的元素全都是相等的,且关于副对角线对称。

2、MATLAB计算

%% 创建一个托普利兹矩阵
n=[1 2 3 4]; 
A=toeplitz(n)  %用向量n创建一个对称T矩阵
m=[1 5 6 7];
B=toeplitz(m,n) %用向量n和m创建一个对称T矩阵,注意n和m的第一个元素要相同

矩阵代数与MATLAB实现(特征值、广义特征值、)_第6张图片

六、汉克尔矩阵(Hankel)

1、汉克尔矩阵

定义:具有如下形式的n+1阶矩阵

\textbf{H}=\begin{bmatrix} a_{0} & a_{1} & a_{2} & \cdots &a_{n} \\ a_{1} & a_{2} & a_{3} &\cdots& a_{n+1} \\ a_{2} & a_{3}& a_{4} &\cdots & a_{n+2} \\ \vdots & \vdots & \vdots & \ddots & \vdots \\ a_{n}& a_{n+1} & a_{n+2}& \cdots & a_{2n} \end{bmatrix}

称为Hankel矩阵。可见,Hankel矩阵完全由其第1行和第n+1列的2n+1个元素确定。其中,所有垂直于主对角的直线上有相等的元素。

2、MATLAB计算

%% 创建一个汉克尔矩阵
n=[4 3 2 1]; 
A=hankel(n)  %用向量n创建一个汉克尔矩阵,第1列元素为n,反三角以下元素为0
m=[5 6 7 4];
B=hankel(m,n) %用向量n和m创建一个汉克尔矩阵,注意m的第一个元素和n的最后一个元素要相同

矩阵代数与MATLAB实现(特征值、广义特征值、)_第7张图片

七、范德蒙矩阵(Vandermonde)

1、范德蒙矩阵

定义:具有如下形式的n×n阶矩阵

\textbf{V}=\begin{bmatrix} 1& 1& 1&\cdots &1 \\ x_{1}& x_{2}& x_{3} & \cdots & x_{n} \\ x_{1}^{2}& x_{2}^{2}& x_{3}^{2}& \cdots & x_{n}^{2} \\ \vdots &\vdots & \vdots & \ddots &\vdots \\ x_{1}^{n-1}& x_{2}^{n-1} & x_{3}^{n-1} & \cdots & x_{n}^{n-1} \end{bmatrix}

称为范德蒙矩阵,如果x_{i}\neq x_{j},那么V是非奇异(可逆)的。

2、MATLAB计算

%% 创建一个范德蒙矩阵
n=[1 2 3 4 5]; 
A=vander(n)  %用向量n创建一个范德蒙方阵
B=rot90(A)   %逆时针旋转90°,标准化范德蒙方阵

矩阵代数与MATLAB实现(特征值、广义特征值、)_第8张图片

八、未完待续


总结

以上就是要讲的内容,本文介绍了矩阵代数的相关知识及其MATLAB的计算,希望对大家有所帮助。

你可能感兴趣的:(玩转MATLAB,矩阵,matlab,线性代数)