eig
特征值和特征向量
语法
e = eig (A)
[V D] = eig (A)
[V D W] = eig (A)
e = eig (A, B)
[V D] = eig (A, B)
[V D W] = eig (A, B)
(___balanceOption] = eig(一个)
(___]= eig (A, B,算法)
(___)= eig (___eigvalOption)
描述
(___)= eig (
,在那里一个
,balanceOption
)balanceOption
是“nobalance”
,禁用初步平衡算法步骤。的默认值balanceOption
是“平衡”
,使平衡。的eig
函数可以返回任何输出的参数在以前的语法。
(___)= eig (___,
返回指定的特征值的形式eigvalOption
)eigvalOption
使用任何输入或输出参数在以前的语法。指定eigvalOption
作为“向量”
返回一个列向量或特征值“矩阵”
返回一个对角矩阵的特征值。
例子
矩阵的特征值
使用画廊
创建一个对称正定矩阵。
一个=画廊(“黄土”4)
一个=1.0000 0.5000 0.3333 0.2500 0.5000 1.0000 0.6667 0.5000 0.3333 0.6667 1.0000 0.7500 0.2500 0.5000 0.7500 1.0000
特征值的计算一个
。结果是一个列向量。
e = eig (A)
e =0.2078 0.4078 0.8482 2.5362
另外,使用eigvalOption
返回一个对角矩阵的特征值。
D = eig (,“矩阵”)
D =0.2078 0.8482 0.4078 0 0 0 0 0 0 0 0 0 0 0 0 2.5362
矩阵的特征值和特征向量
使用画廊
创建一个循环矩阵。
一个=画廊(“线性”3)
一个=1 2 3 3 1 2 2 3 1
计算特征值和特征向量的一个
。
[V D] = eig (A)
我0.2887 - 0.5000 V = -0.5774 + 0.0000 0.2887 -0.5774 + 0.0000 + 0.5000我-0.5774 -0.5774我-0.5774 + 0.0000 + 0.0000 + 0.0000我0.2887 + 0.5000 0.2887 - 0.5000
D = 6.0000 + 0.0000我0.0000 + 0.0000 0.0000 + 0.0000 0.0000 -1.5000 + 0.8660 + 0.0000我0.0000 + 0.0000我0.0000 + 0.0000 + 0.0000 0.0000 -1.5000 - 0.8660我
验证结果满足* V = V * D
。
* V - V * D
ans e-14 = 1.0 * -0.2665 + 0.0000我-0.0333 + 0.1110 -0.0333 - 0.1110 0.0888 0.0000 + 0.1221 + 0.0000我0.0000 - 0.1221我-0.0111 + -0.0444 + 0.0000 0.1221 -0.0111 - 0.1221我
理想情况下,特征值分解满足的关系。自eig
执行分解使用浮点计算* V
可以,在最好的情况下,方法V * D
。换句话说,* V - V * D
接近,但不完全是0
。
一个矩阵的特征值的元素在规模显著不同
(3.0 - -2.0 = -0.9 - 2 *每股收益;-2.0 4.0 1.0每股收益;eps / 4 eps / 2 -1.0 0;-0.5 -0.5 0.1 1.0);
计算特征值和右特征向量使用默认(平衡)的行为。
(VB, DB) = eig (A)
VB =0 0.6153 -0.4176 -0.0000 -0.1528 -0.7881 -0.3261 0.1345 -0.0000 -0.0000 -0.0000 -0.9781 0.0189 0.8481 -1.0000 0.0443
DB =5.5616 1.0000 1.4384 0 0 0 0 0 0 0 0 0 0 0 0 -1.0000
验证结果满足一个VB = VB * * DB
。
一个VB * * VB - DB
ans =1.0 e-14 * -0.1776 -0.0111 -0.0559 -0.0167 0.3553 0.1055 0.0336 -0.0194 0.0017 0.0002 0.0007 0 0.0264 -0.0222 0.0222 0.0097
这个结果不满足一个VB = VB * * DB
。理想情况下,特征值分解满足这个关系。自eig
执行分解使用浮点计算* V
可以,在最好的情况下,方法V * D
。换句话说,* V - V * D
接近,但不完全是0
。
现在,试着计算特征值和特征向量,而平衡的步骤。
(VN, DN) = eig (,“nobalance”)
VN =0 0.6153 -0.4176 -0.0000 -0.1528 -0.7881 -0.3261 0.1345 -0.0000 -0.0000 -0.0000 -0.9781 0.0189 0.8481 -1.0000 0.0443
DN =5.5616 1.0000 1.4384 0 0 0 0 0 0 0 0 0 0 0 0 -1.0000
验证结果满足* VN = VN * DN
。
* VN - VN * DN
ans =1.0 e-14 * -0.1776 -0.0111 -0.0559 -0.0167 0.3553 0.1055 0.0336 -0.0194 0.0017 0.0002 0.0007 0 0.0264 -0.0222 0.0222 0.0097
* VN - VN * DN
更接近于0
,所以“nobalance”
在这种情况下选择产生更精确的结果。
左特征向量
创建一个3×3的矩阵。
(1 = 7 3;2 9日12;5 22 7];
计算正确的特征向量,V
特征值,D
左特征向量,W
。
[V D W] = eig (A)
V =-0.2610 -0.9734 0.1891 -0.5870 0.2281 -0.5816 -0.7663 -0.0198 0.7912
D =25.5548 0 0 0 0 0 0 -0.5789 -7.9759
W =-0.1791 -0.9587 -0.1881 -0.8127 0.0649 -0.7477 -0.5545 0.2768 0.6368
验证结果满足W * = D * W的
。
W * A - D * W的
ans =1.0 e-13 * 0.1155 -0.0711 -0.0711 -0.0033 -0.0215 -0.0408 0.0022 0.0266 0.0178
理想情况下,特征值分解满足的关系。自eig
执行分解使用浮点计算W”*
可以,在最好的情况下,方法D * W '
。换句话说,W * A - D * W的
接近,但不完全是0
。
矩阵特征值的Nondiagonalizable(缺陷)
创建一个3×3的矩阵。
一个= [3 1 0;0 3 1;0 0 3];
计算特征值和特征向量的一个
。
[V D] = eig (A)
V =0.0000 1.0000 -1.0000 1.0000 0.0000 - -0.0000 0 0
D =3 0 0 0 3 0 0 0 3
一个
重复的特征值和特征向量并不是独立的。这意味着一个
不是对角化的,因此,有缺陷的。
验证V
和D
满足的方程,* V = V * D
,即使一个
是有缺陷的。
* V - V * D
ans =1.0 e15汽油0.0000 * 0.8882 - -0.8882 0 0 0 0 0
理想情况下,特征值分解满足的关系。自eig
执行分解使用浮点计算* V
可以,在最好的情况下,方法V * D
。换句话说,* V - V * D
接近,但不完全是0
。
广义特征值
创建两个矩阵,一个
和B
,然后求解广义特征值问题的特征值和右特征向量(A, B)
。
一个= [1 /√(2)0;0 1];B = [0 1;1 /√(2)0];[V D] = eig (A, B)
1.0000 V = 1.0000 + 0.0000 + 0.0000我0.0000 - 0.7071 0.0000 + 0.7071
D = 0.0000 + 1.0000我0.0000 + 0.0000 + 0.0000 0.0000 0.0000 - 1.0000我
验证结果满足* V = B * * D
。
* V - B * * D
ans =0 0 0 0
剩余误差* V - B * * D
就是零。
使用广义特征值求出急需的条件矩阵的算法
创建一个严重条件对称矩阵包含值接近机器精度。
格式长e=诊断接头([10 ^ -16年^ -15))
= 1.000000000000000 e-16 0 0 1.000000000000000 e15汽油
计算右特征向量的广义特征值和一组使用默认的算法。在这种情况下,默认的算法“胆固醇”
。
(V1, D1) = eig (,)
V1 = 1.000000000000000 e + e + 07年08年0 0 3.162277660168380
D1 = 9.999999999999999 e-01 0 0 1.000000000000000 e + 00
现在,计算广义特征值和特征向量使用一组权利“求”
算法。
(V2, D2) = eig(一个,“求”)
V2 = 1 0 0 1
D2 = 1 0 0 1
检查如何“胆固醇”
结果满足* V1 =一个* * D1
。
格式短* V1 - * * D1
ans =1.0 e-23 -0.6617 * 0.1654 0 0
现在,检查的“求”
结果满足一个* V2 * * V2 = D2
。
* V2 - * V2 * D2
ans =0 0 0 0
当矩阵都是对称的,eig
使用“胆固醇”
默认的算法。在这种情况下,求出算法返回更准确的结果。
广义特征值矩阵是奇异的地方
创建一个2×2的单位矩阵,一个
和奇异矩阵,B
。
一个=眼(2);B = [3 6;4 8];
试着计算矩阵的广义特征值,。
[V D] = eig (B \)
警告:矩阵是奇异的工作精度。
错误使用eig
输入EIG不得包含南或正无穷。
现在计算广义特征值和特征向量通过两个矩阵eig
函数。
[V D] = eig (A, B)
V =-0.7500 -1.0000 -1.0000 0.5000
D =0.0909 0 0正
最好是通过矩阵分别,和让eig
选择最好的算法来解决这个问题。在这种情况下,eig (A, B)
返回一组特征向量和至少一个真正的特征值,即使B
是不可逆的。
验证第一特征值和特征向量。
eigval = D (1,1);eigvec = V (: 1);* eigvec——eigval * B * eigvec
ans =1.0 e15汽油0.2220 * 0.1110
理想情况下,特征值分解满足的关系。使用浮点计算自分解执行,然后A * eigvec
可以,在最好的情况下,方法eigval * B * eigvec
,在这种情况下。
输入参数
一个
——输入矩阵
方阵
输入矩阵,指定为一个真正的或复杂的方阵。
数据类型:双
|单
复数的支持:金宝app是的
B
——输入矩阵广义特征值问题
方阵
输入矩阵广义特征值问题,指定为一个方阵的或复杂的值。B
必须是一样的尺寸吗一个
。
数据类型:双
|单
复数的支持:金宝app是的
balanceOption
——平衡选项
“平衡”
(默认)|“nobalance”
平衡选项,指定为:“平衡”
,使初步平衡步骤,或“nobalance”
禁用它。在大多数情况下,平衡一步提高的条件一个
产生更精确的结果。然而,在某些情况下,平衡产生不正确的结果。指定“nobalance”
当一个
包含值的规模大大不同。例如,如果一个
包含非零的整数,以及非常小的(接近于零)值,那么平衡步骤可能规模小的值使其显著的整数和产生不准确的结果。
“平衡”
是默认的行为。关于平衡的更多信息,请参阅平衡
。
数据类型:字符
算法
——广义特征值算法
“胆固醇”
|“求”
广义特征值的算法,指定为“胆固醇”
或“求”
,选择算法用于计算的广义特征值对。
算法 | 描述 |
---|---|
“胆固醇” |
计算的广义特征值一个 和B 使用的柯列斯基分解B 。 |
“求” |
使用算法求出,也被称为广义舒尔分解。该算法忽略了对称的一个 和B 。 |
总的来说,这两个算法返回相同的结果。求算法可以更稳定的某些问题,比如涉及严重条件矩阵。
当你忽略算法
参数,eig
函数性质的基础上选择一个算法一个
和B
。它使用“胆固醇”
对称算法(埃尔米特)一个
和埃尔米特对称正定B
。否则,它使用“求”
算法。
无论您所指定的算法,eig
时总是使用算法求出函数一个
或B
不对称的。
eigvalOption
——特征值选择
“向量”
|“矩阵”
特征值选项,指定为“向量”
或“矩阵”
。这个选项允许您指定是否返回特征值在一个列向量或一个对角矩阵。默认行为变化根据指定的数量的输出:
如果您指定一个输出,例如
e = eig (A)
,那么默认特征值作为一个列向量返回。如果指定两个或三个输出,例如
[V D] = eig (A)
,然后返回为一个对角矩阵,特征值D
默认情况下,。
例子:D = eig (A,“矩阵”)
返回一个对角矩阵的特征值与一个输出语法。
数据类型:字符
输出参数
e
特征值(作为向量返回)
列向量
特征值,作为一个列向量返回包含特征值(或广义特征值的一对)与多样性。
当
一个
是真实的和对称的或复杂的埃尔米特,的值e
满足一个v=λv是真实的。当
一个
是真实的和斜对称的或斜厄密,的值e
满足一个v=λv纯粹是虚构或零。
V
——右特征向量
方阵
右特征向量,作为一个方阵的返回列的右特征向量一个
或广义特征向量的一对,(A, B)
。形式和正常化V
取决于输入参数的组合:
[V D] = eig (A)
收益矩阵V
正确的特征向量的列一个
这样* V = V * D
。的特征向量V
是规范化的2-norm是1。如果
一个
是真正的对称,那么正确的特征向量,V
正交。[V D] = eig (A,“nobalance”)
还返回矩阵V
。然而,每一个特征向量的2-norm不一定是1。[V D] = eig (A, B)
和[V D] = eig (A, B,算法)
返回V
作为一个矩阵的列是广义特征向量满足* V = B * * D
。每个特征向量的2-norm不一定是1。在这种情况下,D
包含的广义特征值对,(A, B)
,沿着主对角线。如果
一个
是对称的,B
是对称的正定,特征向量在吗V
归一化,这样吗B
规范的是1。
D
特征值(作为矩阵)返回
对角矩阵
特征值,作为一个对角矩阵的特征值返回一个
在主对角线或两人的特征值,(A, B)
多重性,在主对角线上。
当
一个
是真实的和对称的或复杂的埃尔米特,的值D
满足一个v=λv是真实的。当
一个
是真实的和斜对称的或斜厄密,的值D
满足一个v=λv纯粹是虚构或零。
W
——左特征向量
方阵
左特征向量,作为一个方阵的返回列的左特征向量一个
或广义的左特征向量,(A, B)
。形式和正常化W
取决于输入参数的组合:
[V D W] = eig (A)
收益矩阵W
的左特征向量的列一个
这样W * = D * W的
。的特征向量W
是规范化的2-norm是1。如果一个
是对称的,然后W
是一样的V
。[V D W] = eig (A,“nobalance”)
还返回矩阵W
。然而,每一个特征向量的2-norm不一定是1。[V D W] = eig (A, B)
和[V D W] = eig (A, B,算法)
返回W
作为一个矩阵的列是广义左特征向量满足W W * = D *的* B
。每个特征向量的2-norm不一定是1。在这种情况下,D
包含的广义特征值对,(A, B)
,沿着主对角线。如果
一个
和B
是对称的,然后W
是一样的V
。
提示
的
eig
函数可以计算稀疏矩阵的特征值是真实的和对称的。计算特征向量的稀疏矩阵,计算稀疏矩阵的特征值,并不是真实的和对称的,使用eigs
函数。
扩展功能
C / c++代码生成
生成C和c++代码使用MATLAB®编码器™。
使用笔记和限制:
V
可能代表一个不同的特征向量和特征值D
可能不是在MATLAB的顺序一样®。广义特征值问题,
[V D] = eig (A, B)
,代码生成总是使用“求”
选择。的标准特征值问题,
[V D] = eig (A)
,当一个
埃尔米特,代码生成使用舒尔
计算V
和D
。否则,结果[V D] = eig (A)
类似于那些获得通过使用吗[V D] = eig(眼(大小(A)),“求”)
在MATLAB中,除了列V
是标准化的。
的
“平衡”
和“nobalance”
选项不支持的标准特征值问题。金宝app的
“胆固醇”
选项不支持对称广义特征值问题金宝app。输出是复杂的。
不支持选择计算左特征向量。金宝app
之前介绍过的R2006a
MATLAB命令
你点击一个链接对应MATLAB命令:
运行该命令通过输入MATLAB命令窗口。Web浏览器不支持MATLAB命令。金宝app
你也可以从下面的列表中选择一个网站:
表现最好的网站怎么走吗
选择中国网站(中文或英文)最佳站点的性能。其他MathWorks国家网站不优化的访问你的位置。