MATLAB ヘルプ センター
このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
構造化ランク
r = sprank(A)
r = sprank(A) は、スパース行列 A の構造化ランクを計算します。
A
例
すべて折りたたむ
2 行 4 列の行列の構造化ランクを計算します。
A = [1 0 2 0 2 0 4 0]; A = sparse(A); rs = sprank(A)
rs = 2
構造化ランクを通常のランクの計算と比較します。
rf = rank(full(A))
rf = 1
この行列の場合、2 列が非ゼロのため、構造化ランクは 2 です。しかし、それらの列は互いの倍数であるため、行列の実際のランクは 1 です。
入力行列。スパース行列として指定します。
データ型: double 複素数のサポート: あり
double
行列の構造化ランクは、同じ非ゼロ パターンをもつすべての行列の最大ランクです。対角にゼロ要素がないように並べ替えることができる場合、行列は非スパースの構造化ランクをもちます。
構造化ランクは行列のランクの上限であるため、sprank(A) >= rank(full(A)) を満たします。
sprank(A) >= rank(full(A))
以下は、他の関数での構造化ランクの定義の一部です。
構造化ランクは "最大一致" であり、sprank(A) = sum(dmperm(A)>0) による Dulmage-Mendelsohn 分解に関連しています。
sprank(A) = sum(dmperm(A)>0)
dmperm と異なり、関数 matchpairs は、一致を計算するときに重みも考慮します。行列を 1 と 0 に変換し、matchpairs(double(A~=0),0,'max') を使用して一致の重みを最大にすることにより、最大一致を計算できます。これにより、構造化ランクが一致の数と等しくなります。
dmperm
matchpairs
matchpairs(double(A~=0),0,'max')
すべて展開する
backgroundPool
ThreadPool
この関数はスレッドベースの環境を完全にサポートしています。詳細については、スレッドベースの環境での MATLAB 関数の実行を参照してください。
R2006a より前に導入
dmperm | matchpairs
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
ヨーロッパ
アジア太平洋地域
最寄りの営業オフィスへのお問い合わせ