如何使用特征库得到复数双矩阵的逆?

时间:2018-01-28 14:16:06

标签: c++ matrix eigen3 matrix-inverse

我尝试了一个cpp程序来找到10乘10 covariance matrix' sn' [其中sn = x * x ^ H; H是具有Eigen library的数据类型复数double的Hermitian]。由于sn具有等级2,我试图通过添加10乘10的矩阵来使其成为满秩矩阵' a'其对角线元素为0.01,对角线元素为0.但现在当我使用.inverse()时,与MATLAB相比,它给出了错误的结果。

int main()
{
MatrixXcd sn(10,10),sn1(10,10),a(10,10);
for(i=0;i<10;i++)
   for(j=0;j<10;j++)
      if(i==j)
      a(i,j)=0.01;
sn1=sn+a;//sn is known
cout<<"sn1 inverse"<<sn1.inverse()<<endl;
 }

当我试图找到2阶2的简单矩阵的逆时,inverse()完美地工作。请帮帮我。

0 个答案:

没有答案