矩阵分解的MATALAB实现
eigen value矩阵分解 matlab

Eigen value矩阵分解是一种在数学和计算机科学领域中广泛应用的重要技术。
它可以将一个复杂的矩阵分解为特征值和特征向量的形式,从而简化问题的求解过程。
在matlab中,Eigen value矩阵分解有着便捷的实现方法,通过简单的几行代码即可完成矩阵的分解和求解特征值、特征向量等关键信息。
本文将介绍Eigen value矩阵分解的原理和在matlab中的实现方法,帮助读者更好地理解和应用这一重要的数学工具。
一、Eigen value矩阵分解的原理Eigen value矩阵分解是指对于一个n阶方阵A,存在n个数λ1,λ2,...,λn,以及n个非零向量v1,v2,...,vn,使得Avi=λivi,其中λi 为矩阵A的特征值,vi为对应的特征向量。
Eigen value矩阵分解能够将复杂的矩阵问题简化为对角化的形式,从而方便求解和分析。
在实际应用中,Eigen value矩阵分解被广泛用于信号处理、图像处理、机器学习等领域,具有重要的理论和实际价值。
二、matlab中的Eigen value矩阵分解在matlab中,Eigen value矩阵分解有着便捷、高效的实现方法,可以通过内置的函数或者简单的代码来完成。
下面将分别介绍两种常用的方法。
1. 使用eig函数进行Eigen value矩阵分解matlab中的eig函数是用于计算矩阵的特征值和特征向量的函数,其基本语法为[V,D] = eig(A),其中A为待分解的矩阵,V为特征向量矩阵,D为特征值矩阵。
通过eig函数,可以方便地获得矩阵的特征值和特征向量,进而进行进一步的分析和计算。
2. 使用svd函数进行Eigen value矩阵分解除了eig函数之外,在matlab中还可以使用svd函数进行Eigen value矩阵分解。
svd函数是用于计算奇异值分解的函数,其返回的结果中包含了矩阵的奇异值、左奇异向量和右奇异向量,可以通过一定的转化得到特征值和特征向量的信息。
奇异谱分解matlab代码

奇异谱分解(Singular Spectrum Decomposition,简称SSD)是一种矩阵分解方法奇异谱分解(Singular Spectrum Decomposition,简称SSD)是一种矩阵分解方法,用于将一个矩阵分解为三个矩阵的乘积。
在MATLAB中,可以使用`svds`函数进行奇异谱分解。
以下是一个使用MATLAB进行奇异谱分解的示例代码:
```matlab
生成一个随机矩阵A
A = randn(5, 5);
对矩阵A进行奇异谱分解
[U, S, V] = svds(A);
输出分解结果
disp('U:');
disp(U);
disp('S:');
disp(S);
disp('V:');
disp(V);
```
在这个示例中,我们首先生成了一个5x5的随机矩阵A,然后使用`svds`函数对其进行奇异谱分解。
分解后的三个矩阵U、S和V分别表示左奇异向量、奇异值和右奇异向量。
最后,我们将分解结果输出到屏幕上。
matlab对hermite矩阵分解-概述说明以及解释

matlab对hermite矩阵分解-概述说明以及解释1.引言1.1 概述概述部分的内容可以包括对Hermit矩阵分解的定义和背景的介绍。
下面是一个可能的概述内容的例子:在数学和计算科学的领域中,矩阵分解是一种重要的技术,用于将复杂的大矩阵表示转化为更简洁、可处理的形式。
其中一种矩阵分解方法是Hermit矩阵分解,它是对Hermit矩阵进行分解的一种特殊方法。
Hermit矩阵是一种具有特殊属性的正方矩阵,其元素复共轭对称。
在Hermit矩阵分解的过程中,通过将一个Hermit矩阵表示为两个特定形式的矩阵的乘积,可以使得矩阵运算更加有效,并且可以提取出矩阵的结构信息。
本文旨在介绍MATLAB在Hermit矩阵分解中的应用,并讨论Hermit 矩阵分解的算法和实现。
首先,我们将详细介绍Hermit矩阵分解的概念和相关背景知识。
接着,我们将探讨MATLAB在Hermit矩阵分解中的具体应用,包括如何使用MATLAB进行矩阵分解和分析。
最后,我们将总结Hermit矩阵分解的优势和局限性,并展望未来相关研究的发展方向。
通过本文的阐述,读者将能够了解Hermit矩阵分解及其在科学和工程问题中的应用价值,同时也能够熟悉MATLAB在这一方面的操作和实现。
无论是对于研究人员还是对于对矩阵分解感兴趣的读者来说,本文都将为他们提供有用的信息和参考。
1.2文章结构1.2 文章结构本文共分为以下几个部分进行讨论和叙述。
第一部分为引言部分,对整篇文章进行概述,并介绍文章的结构和目的。
在这一部分中,我们将简要介绍Hermit矩阵分解的概念以及MATLAB 在该领域的应用。
第二部分为正文部分,主要讨论Hermit矩阵分解的概念、MATLAB 在该领域的具体应用以及Hermit矩阵分解的算法与实现。
我们将详细介绍Hermit矩阵分解的相关概念,包括其定义、特性等,并探讨MATLAB 在该领域中的重要作用和应用。
此外,我们还将介绍一些常用的Hermit 矩阵分解算法,包括其原理、步骤和实现方式。
旋转矩阵分解固定角matlab

旋转矩阵分解固定角matlab1. 介绍旋转矩阵分解是计算机图形学和计算机视觉中常见的一个问题,它是指将一个旋转矩阵分解成多个简单的旋转矩阵的乘积。
在实际应用中,我们经常会遇到需要对旋转矩阵进行分解的情况,比如在机器人运动学、姿态估计和计算机动画等领域。
而在matlab中,我们可以利用一些内置函数来实现对旋转矩阵的分解,其中固定角分解是其中一个常用的方法。
2. 固定角分解的原理在固定角分解中,我们将旋转矩阵分解为三个简单的旋转矩阵的乘积,通常是绕着固定的坐标轴进行旋转。
比如在三维空间中,我们可以将旋转矩阵分解为绕着x轴、y轴和z轴分别进行旋转的三个旋转矩阵的乘积,即R = Rz * Ry * Rx。
其中Rx表示绕着x轴旋转的旋转矩阵,Ry表示绕着y轴旋转的旋转矩阵,Rz表示绕着z轴旋转的旋转矩阵。
3. matlab中的实现在matlab中,我们可以利用如下的函数来实现旋转矩阵的固定角分解:```matlab[Rx, Ry, Rz] = rotm2eul(R)```其中R是一个3x3的旋转矩阵,而Rx、Ry和Rz分别是绕着x、y和z轴旋转的欧拉角。
通过这个函数,我们可以方便地得到旋转矩阵的固定角分解结果,进而应用到具体的问题中。
4. 应用举例举个简单的例子,比如我们有一个旋转矩阵R表示一个物体的姿态,我们希望将其分解为绕着x、y和z轴的旋转角度。
通过上述的函数,我们可以很容易地得到这三个角度,然后就可以进一步利用这些角度进行姿态估计或者机器人路径规划等应用。
5. 个人观点和总结旋转矩阵的固定角分解是计算机图形学和计算机视觉中的一个基础问题,对于理解和应用旋转矩阵都具有重要的意义。
在matlab中,利用内置函数可以方便地实现对旋转矩阵的分解,为进一步的应用提供了便利。
固定角分解的结果也能够直观地反映出物体的旋转情况,有利于进一步的理解和分析。
掌握旋转矩阵的固定角分解方法,对于相关领域的研究和应用都具有重要的意义。
MATLAB矩阵分解算法大全

MATLAB矩阵分解算法大全1.LU分解:LU分解是一种常见的矩阵分解方法,用于解线性方程组和计算矩阵的行列式。
MATLAB中可以使用`lu`函数来进行LU分解。
以下是一个示例:```matlabA=[1,2,3;4,5,6;7,8,9];[L, U, P] = lu(A);```其中,`L`和`U`是分解后的下三角矩阵和上三角矩阵,`P`是置换矩阵。
2.QR分解:QR分解是一种用于解线性方程和计算特征值和特征向量的矩阵分解方法。
MATLAB中可以使用`qr`函数进行QR分解。
以下是一个示例:```matlabA=[1,2,3;4,5,6;7,8,9];[Q, R] = qr(A);```其中,`Q`是正交矩阵,`R`是上三角矩阵。
3. Cholesky分解:Cholesky分解是一种用于解正定对称矩阵线性方程组的方法。
MATLAB中可以使用`chol`函数进行Cholesky分解。
以下是一个示例:```matlabA=[4,2,2;2,5,4;2,4,6];R = chol(A);```其中,`R`是上三角矩阵。
4.奇异值分解(SVD):SVD是一种常用的矩阵分解方法,用于计算矩阵的奇异值和奇异向量。
MATLAB中可以使用`svd`函数进行奇异值分解。
以下是一个示例:```matlabA=[1,2,3;4,5,6;7,8,9];[U, S, V] = svd(A);```其中,`U`和`V`是正交矩阵,`S`是对角矩阵,对角线上的元素是矩阵的奇异值。
5.特征值分解:特征值分解是一种用于计算矩阵的特征值和特征向量的方法。
MATLAB中可以使用`eig`函数进行特征值分解。
以下是一个示例:```matlabA=[1,2,3;4,5,6;7,8,9];[V, D] = eig(A);```其中,`V`是特征向量的矩阵,`D`是对角矩阵,对角线上的元素是矩阵的特征值。
上述是几种常见的矩阵分解算法及其在MATLAB中的实现方法。
matlabsvd分解代码

matlabsvd分解代码MATLAB是一种广泛应用于科学计算和工程领域的高级编程语言和环境。
它提供了许多强大的工具和函数,用于处理和分析数据,解决各种数学问题。
其中一个重要的函数是MATLAB的SVD(奇异值分解)函数,即svd()函数。
本文将介绍MATLAB的svd()函数及其用途。
SVD,即奇异值分解,是一种广泛应用于线性代数和数据分析的数学方法。
它将一个矩阵分解为三个矩阵的乘积,即A = U*S*V',其中A是原始矩阵,U和V是正交矩阵,S是对角矩阵。
S的对角线上的元素称为奇异值,它们表示了矩阵中的信息量和重要性。
在MATLAB中,可以使用svd()函数对矩阵进行奇异值分解。
该函数的使用格式为:[U, S, V] = svd(A)其中A是要分解的矩阵,U、S和V分别是分解后的正交矩阵和奇异值矩阵。
svd()函数在许多领域中都有广泛的应用。
下面将介绍几个常见的用途。
奇异值分解可以用于降维。
在数据分析中,经常会遇到高维数据的问题。
通过对数据矩阵进行奇异值分解,可以得到数据的主要特征和结构。
通过保留最重要的奇异值和相应的特征向量,可以将数据降低到更低的维度,从而减少计算和存储的复杂性。
奇异值分解还可以用于图像压缩。
在图像处理中,图像通常表示为一个矩阵。
通过对图像矩阵进行奇异值分解,可以得到图像的主要特征和结构。
通过保留最重要的奇异值和相应的特征向量,可以将图像压缩到更小的尺寸,同时保留图像的主要信息。
这在图像传输和存储中非常有用。
奇异值分解还可以用于解决线性方程组和矩阵逆的问题。
通过对系数矩阵进行奇异值分解,可以得到它的伪逆矩阵。
伪逆矩阵可以用于求解最小二乘问题和线性方程组,以及处理矩阵不可逆的情况。
除了上述应用,奇异值分解还在信号处理、图像处理、推荐系统等领域中有重要的应用。
它可以提供对数据的全面理解和分析,从而帮助我们更好地理解和处理复杂的问题。
总结一下,MATLAB的svd()函数是一个强大的工具,用于进行奇异值分解和处理各种数学问题。
matlab复值矩阵分解

matlab复值矩阵分解如何在Matlab中实现复值矩阵分解。
复值矩阵分解是将一个复值矩阵分解为两个或多个复值矩阵的过程。
Matlab提供了几种方法来实现复值矩阵分解,包括特征值分解,奇异值分解和矩阵分解算法。
一、特征值分解:特征值分解是将一个方阵分解成特征值和特征向量的过程。
对于一个复值矩阵A,特征值分解可以得到:A = V * D * V^(-1) (1)其中V是特征向量矩阵,D是对角矩阵,对角线上的元素是对应的特征值。
在Matlab中,我们可以使用eig函数来进行特征值分解。
例如,假设我们有一个复值矩阵A,可以使用以下代码进行特征值分解:[V, D] = eig(A);其中V是返回的特征向量矩阵,D是对应的特征值矩阵。
二、奇异值分解:奇异值分解是将一个复值矩阵分解为两个酉矩阵和一个对角矩阵的过程。
对于一个复值矩阵A,奇异值分解可以得到:A = U * S * V' (2)其中U和V是酉矩阵(单位模长度为1的列向量的集合),S是对角矩阵,对角线上的元素是奇异值。
在Matlab中,我们可以使用svd函数来进行奇异值分解。
例如,假设我们有一个复值矩阵A,可以使用以下代码进行奇异值分解:[U, S, V] = svd(A);其中U和V是返回的酉矩阵,S是对应的奇异值矩阵。
三、矩阵分解算法:除了特征值分解和奇异值分解之外,还有一些特定的矩阵分解算法可以在Matlab中使用,例如LU分解、QR分解和Cholesky分解等。
这些算法可以适用于复值矩阵的分解。
在Matlab中,我们可以使用lu函数来进行LU分解,使用qr函数来进行QR分解,使用chol函数来进行Cholesky分解等。
总结:在Matlab中,我们可以使用特征值分解、奇异值分解和其他矩阵分解算法来实现复值矩阵的分解。
这些方法可以帮助我们理解和处理复值矩阵的特征和结构。
通过这些分解,我们可以对复值矩阵进行降维、求逆、求伪逆等操作,从而为复值矩阵的应用提供了便利。
matlab doolittle分解法代码

matlab doolittle分解法代码在MATLAB中,Doolittle分解法(也称为LU分解)是一种常用的求解线性方程组的方法。
以下是一个使用MATLAB实现Doolittle分解法的示例代码:```MATLAB生成一个随机矩阵AA = rand(3, 3);初始化L和U矩阵为0L = eye(3);U = eye(3);采用Doolittle分解法分解矩阵Afor i = 1:3for j = 1:3if i == jU(i, j) = A(i, j);elseL(i, j) = A(i, j);endend寻找最大值并交换行max_idx = find(max(A(:, i)));L(:, i) = L(:, i) / A(max_idx, i);U(:, i) = U(:, i) / A(max_idx, i);end打印L和U矩阵disp('L矩阵:');disp(L);disp('U矩阵:');disp(U);验证分解是否正确A_original = A;L_original = eye(3);U_original = eye(3);[L_original, U_original] = doolittle(A_original);打印原始的L和U矩阵disp('原始的L矩阵:');disp(L_original);disp('原始的U矩阵:');disp(U_original);计算分解后的矩阵乘积与原矩阵是否相等result = L_original * U_original;disp('分解后的矩阵:');disp(result);检查分解后的矩阵是否与原矩阵相等isequal(A_original, result)```以上代码首先生成一个3x3的随机矩阵A,然后使用Doolittle分解法对其进行分解,并打印出分解后的L和U矩阵。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
5.3.3 矩阵分解的MATALAB实现矩阵分解(decomposition, factorization)是多半将矩阵拆解为数个三角形矩阵(triangular matrix),依使用目的的不同,可分为三种矩阵分解法:1)三角分解法(Triangular Factorization),2)QR分解法(QR Factorization),3)奇异值分解法(Singular Value Decompostion)。
(1) 三角分解法三角分解法是将原正方(square) 矩阵分解成一个上三角形矩阵或是排列(permuted) 的上三角形矩阵和一个下三角形矩阵,这样的分解法又称为LU 分解法。
它的用途主要在简化一个大矩阵的行列式值的计算过程,求反矩阵,和求解联立方程组。
不过要注意这种分解法所得到的上下三角形矩阵并非唯一,还可找到数个不同的一对上下三角形矩阵,此两三角形矩阵相乘也会得到原矩阵。
我们举以下二个矩阵为例:利用三角分解法可将A和B二矩阵分别拆解为上下三角形矩阵注意B分解的矩阵得到的第一个矩阵[LB]是排列的下三角形矩阵,如果第二、三列互换,则此变成完全的下三角形矩阵。
以MATLAB函数计算上述的LU分解法,其语法为[L,U]=lu(A),其中L代表下三角形矩阵U代表上三角形矩阵。
我们来看一个例子。
>> A = [1 2 -1; -2 -5 3; -1 -3 0]; B=[1 3 2; -2 -6 1; 2 5 7];>> [L1,U1] = lu(A); [L2,U2] = lu(B);>> L1; U1L1 = % 注意这个矩阵L1和之前的[LA]不相同-0.5 1 01 0 00.5 1 1U1 = % 注意这个矩阵U1和之前的[UA]不相同-2 -5 30 -0.5 0.50 0 -2>> L2; U2L2 = % 注意这个矩阵L2和之前的[LB]不相同-0.5 0 11 0 0-1 1 0U2 = % 注意这个矩阵U2和之前的[UB]不相同-2 -6 10 -1 80 0 2.5(2) QR分解法QR分解法是将矩阵分解成一个正规正交矩阵与上三角形矩阵。
还记得先前我们介绍的正规正交矩阵Q满足的条件吗!所以称为QR分解法与此正规正交矩阵的通用符号Q有关。
MATLAB以qr函数来执行QR分解法,其语法为[Q,R]=qr(A),其中Q代表正规正交矩阵,而R代表上三角形矩阵。
此外,原矩阵A不必为正方矩阵;如果矩阵A大小为,则矩阵Q大小为,矩阵R大小为。
(3) 奇异值分解法奇异值分解(sigular value decomposition,SVD) 是另一种正交矩阵分解法;SVD 是最可靠的分解法,但是它比QR分解法要花上近十倍的计算时间。
[U,S,V]=svd(A),其中U和V代表二个相互正交矩阵,而S代表一对角矩阵。
和QR分解法相同者,原矩阵A不必为正方矩阵。
使用SVD分解法的用途是解最小平方误差法和数据压缩。
1.3 矩阵分解1.3.1 Cholesky分解函数chol格式R = chol(X) %如果X为n阶对称正定矩阵,则存在一个实的非奇异上三角阵R,满足R'*R = X;若X非正定,则产生错误信息。
[R,p] = chol(X) %不产生任何错误信息,若X为正定阵,则p=0,R与上相同;若X非正定,则p为正整数,R是有序的上三角阵。
例1-66>> X=pascal(4) %产生4阶pascal矩阵X =1 1 1 11 2 3 41 3 6 101 4 10 20>> [R,p]=chol(X)R =1 1 1 10 1 2 30 0 1 30 0 0 1p =1.3.2 LU分解矩阵的三角分解又称LU分解,它的目的是将一个矩阵分解成一个下三角矩阵L和一个上三角矩阵U的乘积,即A=LU。
函数lu格式[L,U] = lu(X) %U为上三角阵,L为下三角阵或其变换形式,满足LU=X。
[L,U,P] = lu(X) %U为上三角阵,L为下三角阵,P为单位矩阵的行变换矩阵,满足LU=PX。
例1-67>> A=[1 2 3;4 5 6;7 8 9];>> [L,U]=lu(A)L =0.1429 1.0000 00.5714 0.5000 1.00001.0000 0 0U =7.0000 8.0000 9.00000 0.8571 1.71430 0 0.0000>> [L,U,P]=lu(A)L =1.0000 0 00.1429 1.0000 00.5714 0.5000 1.0000U =7.0000 8.0000 9.00000 0.8571 1.71430 0 0.0000P =0 0 11 0 00 1 01.3.3 QR分解将矩阵A分解成一个正交矩阵与一个上三角矩阵的乘积。
函数qr格式[Q,R] = qr(A) %求得正交矩阵Q和上三角阵R,Q和R满足A=QR。
[Q,R,E] = qr(A) %求得正交矩阵Q和上三角阵R,E为单位矩阵的变换形式,R的对角线元素按大小降序排列,满足AE=QR。
[Q,R] = qr(A,0) %产生矩阵A的“经济大小”分解[Q,R,E] = qr(A,0) %E的作用是使得R的对角线元素降序,且Q*R=A(:, E)。
R = qr(A) %稀疏矩阵A的分解,只产生一个上三角阵R,满足R'*R =A'*A,这种方法计算A'*A时减少了内在数字信息的损耗。
[C,R] = qr(A,b) %用于稀疏最小二乘问题:minimize||Ax-b||的两步解:[C,R] =qr(A,b),x = R\c。
R = qr(A,0) %针对稀疏矩阵A的经济型分解[C,R] = qr(A,b,0) %针对稀疏最小二乘问题的经济型分解例1-68>>A =[ 1 2 3;4 5 6; 7 8 9; 10 11 12];>>[Q,R] = qr(A)Q =-0.0776 -0.8331 0.5444 0.0605-0.3105 -0.4512 -0.7709 0.3251-0.5433 -0.0694 -0.0913 -0.8317-0.7762 0.3124 0.3178 0.4461R =-12.8841 -14.5916 -16.29920 -1.0413 -2.08260 0 0.00000 0 0函数qrdelete格式[Q,R] = qrdelete(Q,R,j) %返回将矩阵A的第j列移去后的新矩阵的qr分解例1-69>> A=[-149 -50 -154;537 180 546;-27 -9 -25];>> [Q,R]=qr(A)Q =-0.2671 -0.7088 0.65290.9625 -0.1621 0.2176-0.0484 0.6865 0.7255R =557.9418 187.0321 567.84240 0.0741 3.45770 0 0.1451>> [Q,R]=qrdelete(Q,R,3) %将A的第3列去掉后进行qr分解。
Q =-0.2671 -0.7088 0.65290.9625 -0.1621 0.2176-0.0484 0.6865 0.7255R =557.9418 187.03210 0.07410 0函数qrinsert格式[Q,R] = qrinsert(Q,R,j,x) %在矩阵A中第j列插入向量x后的新矩阵进行qr分解。
若j大于A的列数,表示在A的最后插入列x。
例1-70>> A=[-149 -50 -154;537 180 546;-27 -9 -25];>> x=[35 10 7]';>> [Q,R]=qrinsert(Q,R,4,x)Q =-0.2671 -0.7088 0.65290.9625 -0.1621 0.2176-0.0484 0.6865 0.7255R =557.9418 187.0321 567.8424 -0.06090 0.0741 3.4577 -21.62290 0 0.1451 30.10731.3.4 Schur分解函数schur格式T = schur(A) %产生schur矩阵T,即T的主对角线元素为特征值的三角阵。
T = schur(A,flag) %若A有复特征根,则flag='complex',否则flag='real'。
[U,T] = schur(A,…) %返回正交矩阵U和schur矩阵T,满足A = U*T*U'。
例1-71>> H = [ -149 -50 -154; 537 180 546; -27 -9 -25 ];>> [U,T]=schur(H)U =0.3162 -0.6529 0.6882-0.9487 -0.2176 0.22940.0000 0.7255 0.6882T =1.0000 -7.1119 -815.87060 2.0000 -55.02360 0 3.00001.3.5 实Schur分解转化成复Schur分解函数rsf2csf格式[U,T] = rsf2csf (U,T) %将实舒尔形式转化成复舒尔形式例1-72>> A=[1 1 1 3;1 2 1 1;1 1 3 1;-2 1 1 4];>> [u,t]=schur (A)u =-0.4916 -0.4900 -0.6331 -0.3428-0.4980 0.2403 -0.2325 0.8001-0.6751 0.4288 0.4230 -0.4260-0.2337 -0.7200 0.6052 0.2466t =4.8121 1.1972 -2.2273 -1.00670 1.9202 -3.0485 -1.83810 0.7129 1.9202 0.25660 0 0 1.3474>> [U,T]=rsf2csf (u,t)U =-0.4916 -0.2756 - 0.4411i 0.2133 + 0.5699i -0.3428-0.4980 -0.1012 + 0.2163i -0.1046 + 0.2093i 0.8001-0.6751 0.1842 + 0.3860i -0.1867 - 0.3808i -0.4260-0.2337 0.2635 - 0.6481i 0.3134 - 0.5448i 0.2466T =4.8121 -0.9697 + 1.0778i -0.5212 + 2.0051i -1.00670 1.9202 + 1.4742i 2.3355 0.1117 + 1.6547i0 0 1.9202 - 1.4742i 0.8002 + 0.2310i0 0 0 1.34741.3.6 特征值分解函数 eig格式 d = eig(A) %求矩阵A 的特征值d ,以向量形式存放d 。