How can I generate random sparse stable matrices ?

I need to generate random matrices that are sparse and stable and control the sparsity level, I tried using matlab functions sprand and sprandn and use conditional "if" to check if the generated matrices have negative eigenvalues, but the generated matrices are often unstable and do not converge to the steady state.

 採用された回答

John D'Errico
John D'Errico 2014 年 2 月 15 日

0 投票

There is simply no way that use of sprand or sprandn will yield matrices with all positive eigenvalues with any viable frequency.
However, you might use those tools to generate the random sparse matrices, then shift the eigenvalues. Gershgorin disks will suffice to know how much of a shift is necessary. The result may not be as purely "random" as you might want, but it very possibly is as good as you will get.

1 件のコメント

Mohammed
Mohammed 2014 年 2 月 17 日
Thanks. with your answer and another answer posted on the webpage http://www.mathworks.com/matlabcentral/newsreader/view_thread/26871 I am able to generate random sparse stable matrix.

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

その他の回答 (0 件)

カテゴリ

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

質問済み:

2014 年 2 月 15 日

コメント済み:

2014 年 2 月 17 日

Community Treasure Hunt

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

Start Hunting!

Translated by