找到一个与常数或另一个矩阵相乘时得出相同结果的矩阵 [英] Find a matrix that gives same result when multiplied by a constant or another matrix
问题描述
我遇到了类似A*x=lambda*x
的问题,其中A
的顺序是d*d
,x
的顺序是d*c
,而lambda是一个常数. A
和lambda
是已知的,而矩阵x
是未知的.
有什么办法可以在Matlab中解决这个问题? (与特征值类似,但x
是d*c
矩阵,而不是矢量).
I have got a problem like A*x=lambda*x
, where A
is of order d*d
, x
is of order d*c
and lambda is a constant. A
and lambda
are known and the matrix x
is unknown.
Is there any way to solve this problem in matlab?? (Like eigen values but x
is a d*c
matrix instead of being a vector).
推荐答案
如果我对您的理解正确,那么x
不一定有任何解决方案.如果A*x=lambda*x
,则x
的任何列y
都满足A*y=lambda*y
,因此x
的列只是A
的特征向量,对应于特征值lambda
,并且只有在以下情况下才有任何解lambda
实际上是一个特征值.
If I've understood you correctly, there will not necessarily be any solutions for x
. If A*x=lambda*x
, then any column y
of x
satisfies A*y=lambda*y
, so the columns of x
are simply eigenvectors of A
corresponding to the eigenvalue lambda
, and there will only be any solutions if lambda
is in fact an eigenvalue.
从文档:
[V,D] = eig(A)产生特征值(D)和特征向量的矩阵 (V)是矩阵A,因此A * V = V * D.矩阵D是的标准形式 A —对角矩阵,在主对角线上具有A的特征值. 矩阵V是模态矩阵,其列是A的特征向量.
[V,D] = eig(A) produces matrices of eigenvalues (D) and eigenvectors (V) of matrix A, so that A*V = V*D. Matrix D is the canonical form of A — a diagonal matrix with A's eigenvalues on the main diagonal. Matrix V is the modal matrix — its columns are the eigenvectors of A.
您可以使用它来检查lambda
是否为特征值,并找到任何对应的特征向量.
You can use this to check if lambda
is an eigenvalue, and find any corresponding eigenvectors.
这篇关于找到一个与常数或另一个矩阵相乘时得出相同结果的矩阵的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!