如何在 MATLAB 中找到两个矩阵的联合特征值?

How can I find the joint eigenvalues of two matrices in MATLAB?

如果矩阵AB的联合特征值定义为方程的根 det(lambda * A - B) = 0, 我怎样才能在 MATLAB 中解决这个问题?

特别是,我不确定 lambda 是如何定义的——它显然需要是一个矩阵或向量,否则只有一个联合特征值。另外,我不确定是否有任何内置函数,或者是否需要使用 fzero 来查找非线性函数的根。

为此有一个内置函数。

http://www.mathworks.com/help/matlab/ref/eig.html

[V,D] = eig(B,A);

[V,D] = eig(A,B)求解系统det(A - lambda*B) == 0。然而,需要求解的系统是 det(A*lambda - B) == 0,因此输入被反转以尊重求解该系统。