I have a positive definite sparse array. When I do the chol like
L = chol(M,'lower')
M2 = (L)*(L.')
I find that M2 is not equal to M. I mean that all the elements are equal except 4. These elements are zero in M and -.7 on M2, and vis versa. In other words, M2 has two element pairs that have switched values. I thought M2 should equal M.
I need to solve
Ax = b
Ax = c
Ax = d
...
etc.
How can I use chol to do this efficiently? I have to use stock MATLAB functions.

1 件のコメント

Mohamed Selim
Mohamed Selim 2013 年 10 月 10 日
chol function works only with Positive Definate and Symmetric square matrices.
Make sure that your matrix M is symmetric.
You can use "isequal(M , M')"
if you get "1" => M is Symmetric
If you get "0" => M is not Symmetric.

サインインしてコメントする。

回答 (0 件)

カテゴリ

ヘルプ センター および File ExchangeCreating and Concatenating Matrices についてさらに検索

タグ

質問済み:

2013 年 4 月 23 日

コメント済み:

2013 年 10 月 10 日

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by