How can I create sparse symmetric positive definite linear system?

Dear All :) I'm looking for sparse symmetric positive definite linear system Ax=b. Is it possible to generate it in Matlab? I need matrix A about 50x50 (maximum 100x100 - minimum 20x20) and vector b. It might be floating point numbers... I prefer not compressed format ;)
Thank you in advance.
D.

 Respuesta aceptada

Richard Brown
Richard Brown el 6 de Ag. de 2013
Editada: Richard Brown el 6 de Ag. de 2013
sprandsym is what you want.
m = 50;
density = 2/m; % for example
rc = 0.1; % Reciprocal condition number
A = sprandsym(m, density, rc, 1);
If you don't want it in compressed column format
A = full(A);
Verify positive definiteness
chol(A);

4 comentarios

Thank you. And is it possible to generate sparse SPD but integer?
Not directly, but you might try scaling and rounding results from sprandsym, or something like that
How to generate the matrix b.
Can it be a random one independent of the way A is generated?
I needed to generate a symmetric sparse positive definite matrix. can you help me in that?

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Sparse Matrices en Centro de ayuda y File Exchange.

Preguntada:

D
D
el 6 de Ag. de 2013

Comentada:

el 17 de Jul. de 2019

Community Treasure Hunt

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

Start Hunting!

Translated by