在Modelica中如何计算复矩阵的特征向量和特征值?

在Modelica中如何计算复矩阵的特征向量和特征值?,modelica,eigenvalue,eigenvector,openmodelica,Modelica,Eigenvalue,Eigenvector,Openmodelica,我试图使用Modelica计算复矩阵的特征值和特征向量。是否有任何库或内置的标准库功能可以帮助我进行此计算 任何帮助都将不胜感激 查看库,它有各种支持的矩阵函数 例如,特征值(…)方法似乎是您感兴趣的方法: (eval,evec)=特征值(A)-返回实表示中实非对称矩阵A的特征值“eval”和特征向量“evec” 下面是使用特征值()方法的示例: Example Real A[3,3] = [1,2,3; 3,4,5; 2,

我试图使用
Modelica
计算复矩阵的特征值和特征向量。是否有任何库或内置的标准库功能可以帮助我进行此计算

任何帮助都将不胜感激

查看库,它有各种支持的矩阵函数

例如,
特征值(…)
方法似乎是您感兴趣的方法:

(eval,evec)=特征值(A)
-返回实表示中实非对称矩阵A的特征值“eval”和特征向量“evec”

下面是使用
特征值()
方法的示例:

Example
  Real A[3,3] = [1,2,3;
                 3,4,5;
                 2,1,4];
  Real eval[3,2];
algorithm
  eval := Matrices.eigenValues(A);  // eval = [-0.618, 0;
                                    //          8.0  , 0;
                                    //          1.618, 0];
i.e., matrix A has the 3 real eigenvalues -0.618, 8, 1.618.

希望这有帮助

我试过这个函数,它是用来计算实矩阵的特征值的,但它对复数矩阵不起作用。根据文档,你能再试试吗?支持复数:第一列“特征值”包含实值,第二列包含特征值的虚部。如果第i个特征值没有虚部,则特征向量[:,i]是对应的实特征向量。如果第i个特征值有一个虚部,那么特征值[i+1,:]是共轭复特征值,特征向量[:,i]是实数,特征向量[:,i+1]是第i个特征值的特征向量的虚部。我阅读了文档,使得特征值可以是复数,而不是输入矩阵。我同意你最后的评论,它不支持复杂的输入矩阵。解是什么?你的复矩阵有什么性质?它是对称的吗?