对正定矩阵进行Cholesky分解(Mathematica)

2025-11-01 14:58:41

1、A = {a, a^2, a^3, a^4, a^5};

其中,a = Range[5];

A不能进行Cholesky分解:

b = CholeskyDecomposition[A];

对正定矩阵进行Cholesky分解(Mathematica)

2、Hilbert矩阵都是正定矩阵:

B = HilbertMatrix[6];

对正定矩阵进行Cholesky分解(Mathematica)

3、因此,可以对Hilbert矩阵进行Cholesky分解:

c = CholeskyDecomposition[B];

这里的c是一个上对角矩阵。

对正定矩阵进行Cholesky分解(Mathematica)

4、计算c的共轭转置:

d=ConjugateTranspose【c】

对正定矩阵进行Cholesky分解(Mathematica)

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

对正定矩阵进行Cholesky分解(Mathematica)

6、判断矩阵是否正定矩阵,可以查看矩阵的特征值是否全是正数:

N@Eigenvalues[A]

还可以检测矩阵的所有主子式的行列式是否都是正数:

Table[Det[A[[1 ;; n, 1 ;; n]]], {n, 1, 5}]

两种方法都证明了A是正定矩阵。

对正定矩阵进行Cholesky分解(Mathematica)

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

对正定矩阵进行Cholesky分解(Mathematica)

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