对正定矩阵进行Cholesky分解(Mathematica)
1、A = {a, a^2, a^3, a^4, a^5};
其中,a = Range[5];
A不能进行Cholesky分解:
b = CholeskyDecomposition[A];

2、Hilbert矩阵都是正定矩阵:
B = HilbertMatrix[6];

3、因此,可以对Hilbert矩阵进行Cholesky分解:
c = CholeskyDecomposition[B];
这里的c是一个上对角矩阵。

4、计算c的共轭转置:
d=ConjugateTranspose【c】

5、d与c的矩阵积,就是B。

6、判断矩阵是否正定矩阵,可以查看矩阵的特征值是否全是正数:
N@Eigenvalues[A]
还可以检测矩阵的所有主子式的行列式是否都是正数:
Table[Det[A[[1 ;; n, 1 ;; n]]], {n, 1, 5}]
两种方法都证明了A是正定矩阵。

7、可是为什么A不能进行Cholesky分解?

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
阅读量:44
阅读量:88
阅读量:88
阅读量:77
阅读量:158