科学計算において、スカイライン行列ストレージ(SKS)、可変バンド行列ストレージ(エンベロープストレージ方式)[1]は、スパース行列ストレージ形式の行列の一種であり、バンドストレージよりも行列のストレージ要件を削減します。バンドストレージでは、対角線から一定の距離(半バンド幅と呼ばれる)内のすべてのエントリが格納されます。列指向のスカイラインストレージでは、各列の最初の非ゼロエントリから最後の非ゼロエントリまでのエントリのみが格納されます。行指向のスカイラインストレージもあり、対称行列の場合は通常、1つの三角形のみが格納されます。[2]

スカイライン保存は、構造力学の有限要素コードで非常に人気が高まっています。これは、コレスキー分解(対称正定値行列で連立一次方程式を解く方法。すべてのフィルインはスカイライン内に収まる)によってスカイラインが保存され、有限要素からの連立方程式のスカイラインが比較的小さいためです。さらに、スカイラインコレスキー[3]のコーディングの労力は、帯状行列のコレスキーとほぼ同じです(帯状行列ではLAPACKなどで利用可能。プロトタイプのスカイラインコードについては、[3]を参照してください)。
スカイライン形式で行列を保存する前に、通常は行と列の番号が付け直されて、スカイラインのサイズ (保存される非ゼロのエントリの数) が縮小され、スカイライン コレスキー アルゴリズムでの操作回数が減ります。帯域幅を削減する同じヒューリスティックな番号付けアルゴリズムが、スカイラインの縮小にも使用されます。これを行う基本的かつ最も古いアルゴリズムの 1 つは、逆 Cuthill-McKee アルゴリズムです。
しかし、スカイライン・コレスキー法は超並列計算に簡単に適応できないため、スカイライン・ストレージは非常に大規模なシステム(数百万の方程式)ではそれほど一般的ではなく、行列の非ゼロ要素のみを格納する一般的なスパース法[4]は、埋め込みがはるかに少ないため、非常に大規模な問題ではより効率的になります。
参照
参考文献
- ^ Watkins, David S. (2002)、行列計算の基礎(第2版)、ニューヨーク:John Wiley&Sons、Inc.、p. 60、ISBN 0-471-21394-2
- ^ バレット、リチャード; ベリー; チャン; デメル; ドナート; ドンガラ; エイクアウト; ポゾ; ロミン; ファン・デル・フォルスト (1994)、「スカイライン・ストレージ (SKS)」、線形システムの解のテンプレート、SIAM、ISBN 0-89871-328-5
- ^ ab ジョージ、アラン; リュー、ジョセフ WH (1981)、大規模スパース正定値システムのコンピュータ解法、Prentice-Hall Inc.、ISBN 0-13-165274-5この本には、長い間使われなくなってもなお役に立つ、単純な疎行列ルーチンの説明とソース コードも含まれています。
- ^ ダフ、イアン・S.; エリスマン、アルバート・M.; リード、ジョン・K. (1986)、疎行列の直接法、オックスフォード大学出版局、ISBN 0-19-853408-6
