Main Content

full

スパース モデルを密度の高いストレージに変換する

R2020b 以降

    説明

    fsys = full(sys) は、sparss および mechss モデル sys を密度の高い状態空間表現 ss に変換します。mechss モデルの場合、密度の高い表現への変換は full(sparss(sys)) と等価です。他のモデル タイプの場合、full では sys は変更されません。

    full コマンドを使用して、小規模のスパース モデルを密度の高いストレージに変換して、極/零点の抽出、モデル次数の低次元化、コントローラー設計と調整などの操作を実行します。大規模なスパース モデルでの密度の高いストレージへの変換は、利用可能なメモリが飽和し、パフォーマンスが大幅に低下する場合があるため、推奨されません。

    すべて折りたたむ

    この例では、50 のノードをもつスパース 2 次モデルを含む sparseSOFull.mat について考えます。

    スパース 2 次モデルを読み込み、full を使用して密な表現に変換します。

    load('sparseSOFull.mat','sys');
    fsys = full(sys);
    size(fsys)
    State-space model with 1 outputs, 1 inputs, and 100 states.
    

    sysmechss モデルであるため、密度の高いストレージへの変換は fsys = full(sparss(sys)) と同じです。結果のモデル fsys は、質量行列がフル ランクであるため、100 の状態を持つ非スパース ストレージ ss モデル オブジェクトになります。

    2 つの表現のストレージ サイズを比較します。

    whos
      Name      Size             Bytes  Class     Attributes
    
      fsys      1x1             164674  ss                  
      sys       1x1               6671  mechss    sparse    
    

    大規模なスパース モデルでの密度の高いストレージへの変換は、利用可能なメモリが飽和し、パフォーマンスが大幅に低下する場合があるため、推奨されません。

    入力引数

    すべて折りたたむ

    スパース状態空間モデル。sparss または mechss モデル オブジェクトとして指定します。他のモデル タイプの場合、full では sys は変更されません。

    出力引数

    すべて折りたたむ

    密な状態空間モデル。ss モデル オブジェクトとして返されます。密な状態空間モデル表現の詳細については、ss を参照してください。

    バージョン履歴

    R2020b で導入