prescale
状態空間モデルの最適なスケーリング
構文
scaledsys = prescale(sys)
scaledsys = prescale(sys,focus)
[scaledsys,info] = prescale(...)
prescale(sys)
説明
scaledsys = prescale(sys) は、状態空間モデル sys の状態ベクトル要素をスケーリングして、連続した周波数領域の解析精度を最大化します。スケーリングしたモデル scaledsys は、sys と等価です。
scaledsys = prescale(sys,focus) は精度を最大化するための周波数範囲 focus = {fmin,fmax} (rad/TimeUnit 単位、ここで TimeUnit は sys の TimeUnit プロパティで指定されたシステムの時間単位) を指定します。これは、sys が遅いダイナミクスと速いダイナミクスをもち、スケーリングがダイナミック レンジ全体で高い精度に達しない場合に有効です。既定では、prescale は支配的なダイナミクスの周波数帯域で精度を高めようとします。
[scaledsys,info] = prescale(...) は次の表に一覧表示されているフィールドを含む構造体 info を返します。
SL | 左側のスケーリング係数 |
SR | 右側のスケーリング係数 |
Freqs | 精度をテストするために使われる周波数 |
RelAcc | これらの周波数で保証される相対精度 |
テスト周波数は、指定された場合、周波数範囲 focus 内になります。スケーリングした状態空間行列は次のようになります。
ここで、TL = diag(SL) および TR = diag(SR)。TL および TR は、陽的なモデル (E = [ ]) に対して互いに逆です。
prescale(sys) は次の役割を果たす対話型 GUI を開きます。
sysの精度のトレードオフを視覚化するsysの精度を最大化した周波数区間を調整する

スケーリングおよびスケーリング ツールの GUI の詳細は、状態空間モデルのスケーリングを参照してください。
ヒント
ほとんどの周波数領域解析コマンドは、scaledsys = prescale(sys) と等価な自動スケーリングを実行します。
時間領域のシミュレーションではスケーリングが必要ないため、スケーリングを行うと、initial と lsim シミュレーションで使用される初期条件 x0 が無効になる可能性があります。
バージョン履歴
R2008b で導入