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 commentaire

Mohamed Selim
Mohamed Selim le 10 Oct 2013
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.

Connectez-vous pour commenter.

Réponses (0)

Catégories

En savoir plus sur Matrices and Arrays dans Centre d'aide et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by