2

stepinfo関数が伝達関数(つまり)で実行される場合stepinfo(tf)、典型的な結果は次のとおりです。

    RiseTime: 52.2052
SettlingTime: 85.4916
 SettlingMin: 0.9041
 SettlingMax: 1.0012
   Overshoot: 0.1192
  Undershoot: 0
        Peak: 1.0012
    PeakTime: 132.8773

私はいくつかの調査をしましstepinfoた。構造体を返すようです。そこで、上記の結果を変数に割り当て、を使用してそのサイズを確認しましたsize()。これは1x1のマトリックスです。

これにより、最初に文字列に割り当ててから文字列操作を実行しない限り、この構造体から個々のデータメンバーを抽出することはできないと確信しています。

OvershootとPeakTimeの値が必要です。POとTpの式を使用せずに、そして大きな文字列の混乱なしに、これらの値を取得するための最良の方法を知っている人はいますか?

4

1 に答える 1

4

MATLABのすべてが行列と見なされます。単一の構造要素(このstepinfo例では返されるもの)は、タイプが1行1列の行列ですstruct。次のように構造のフィールドにアクセスできます。

S = stepinfo(sys);        %# Returns a structure, stored in variable S
overShoot = S.Overshoot;  %# Get the value in the Overshoot field
peakTime = S.PeakTime;    %# Get the value in the PeakTime field

構造体の操作の詳細については、このドキュメントページを確認してください。

于 2011-02-21T17:53:27.787 に答える