Main Content

このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。

mechssdata

2 次スパース状態空間モデル データにアクセスする

    説明

    [M,C,K,B,F,G,D] = mechssdata(sys) は、スパース状態空間モデル sysMCKBFG および D 行列を返します。sysmechss モデルでない場合、最初に mechss モデル形式に変換されます。

    システムに内部遅延がある場合、mechssdatapade(sys,0) の行列を返します。これには、内部遅延のフィードバック ループが伴い、モデルは微分代数方程式 (DAE) で保持されます。その結果、行列 MC、および K はスパース性を維持するためにフィードバック信号で拡張されるため、そのサイズは通常 sys の次数よりも大きくなります。

    [M,C,K,B,F,G,D,ts] = mechssdata(sys) はサンプル時間 ts も返します。

    ___ = mechssdata(sys,J1,...,JN) は、モデル配列 sysJ1,...,JN エントリのデータを抽出します。

    すべて折りたたむ

    この例では、連続時間 mechss モデル sys1 を含む sparseSOModels.mat について考えます。

    モデル sys1 をワークスペースに読み込み、mechssdata を使用してスパース行列を抽出します。

    load('sparseSOModels.mat','sys1');
    size(sys1)
    Sparse second-order model with 2 outputs, 2 inputs, and 299 degrees of freedom.
    
    [M,C,K,B,F,G,D] = mechssdata(sys1);

    行列は、double のスパース配列として返されます。

    この例では、離散時間 mechss モデル sys2 を含む sparseSOModels.mat について考えます。

    モデル sys2 をワークスペースに読み込み、mechssdata を使用してスパース行列を抽出します。

    load('sparseSOModels.mat','sys2');
    size(sys2)
    Sparse second-order model with 3 outputs, 3 inputs, and 108 degrees of freedom.
    
    [M,C,K,B,F,G,D,ts] = mechssdata(sys2);

    行列は、double のスパース配列として返されます。

    この例では、スパース 2 次モデル sys の 3 行 1 列の配列に含まれる特定のスパース 2 次状態空間モデルのスパース行列を抽出します。

    データを読み込み、配列内の 2 番目のモデルのスパース行列を抽出します。

    load('sparseSOModelArray.mat','sys');
    size(sys)
    1x3 array of sparse second-order models.
    Each model has 1 outputs, 3 inputs, and 1174 degrees of freedom.
    
    [M,C,K,B,F,G,D] = mechssdata(sys,1,2);

    入力引数

    すべて折りたたむ

    動的システム。SISO または MIMO 動的システム モデル、あるいは SISO または MIMO 動的システム モデルの配列として指定します。使用できる動的システムには、mechsssparsstfsszpk モデルなどの連続時間または離散時間の数値 LTI モデルが含まれます。

    sysmechss モデル オブジェクトでない場合は、最初に mechss を使用して 2 次スパース状態空間モデルに変換されます。2 次スパース状態空間モデルのデータ形式の詳細については、mechss のリファレンス ページを参照してください。

    アクセスするデータをもつ配列内のモデルインデックス。正の整数として指定します。sys における配列の次元数と同じ数のインデックスを指定できます。たとえば、sys がスパース モデルの 4 行 5 列の配列である場合、次のコマンドは配列のエントリ (2,3) のデータにアクセスします。

    [M,C,K,B,F,G,D] = mechssdata(sys,2,3);

    出力引数

    すべて折りたたむ

    質量行列。NqNq 列のスパース行列として返されます。ここで、Nq はノードの数です。

    減衰行列。NqNq 列のスパース行列として返されます。ここで、Nq はノードの数です。

    剛性行列。NqNq 列のスパース行列として返されます。ここで、Nq はノードの数です。

    入力から状態への行列。NqNu 列のスパース行列として返されます。ここで Nq はノードの数、Nu は入力の数です。

    変位から出力への行列。NyNq 列のスパース行列として返されます。ここで Nq はノードの数、Ny は出力の数です。

    速度から出力への行列。NyNq 列のスパース行列として返されます。ここで Nq はノードの数、Ny は出力の数です。

    入力から出力への行列。NyNu 列のスパース行列として返されます。ここで Ny は出力の数、Nu は入力の数です。D は静的ゲイン行列とも呼ばれ、定常状態の条件下での入力に対する出力の比率を表します。

    サンプル時間。スカラーとして返されます。

    バージョン履歴

    R2020b で導入