phaseplot 周波数位相プロット

## 呼び出し手順

                phaseplot(sl)
                phaseplot(sl,fmin,fmax [,step] [,comments] )
                phaseplot(frq,db,phi [,comments])
                phaseplot(frq, repf [,comments])

## 引数

sl

  一入力多出力 (SIMO) 線形動的システム (syslin参照).

fmin

  実スカラー: 表示する最小周波数 (単位:Hz) .

fmax

  実スカラー: 表示する最大周波数 (単位:Hz).

step

  実スカラー: 周波数離散化刻み (指数スケール)). 指定しない場合、このアルゴリズムは、 適用型周波数刻みを使用します.

comments

  文字列ベクトル: 各曲線に付随する凡例ラベル. オプションの値は空の配列です.

frq

  行ベクトルまたは n x m 配列: 周波数離散化(Hz).

db

  n x m 配列: `frq`に対応する大きさ. この引数が使用されない場合、 `phaseplot`は`gainplot`および `bode`と同じ呼び出し手順となります.

phi

  n x m 配列: `frq`に対応する位相[deg]. `phaseplot`関数は曲線 `phi(i,:)` 対 `frq(i,:)` をプロットします.

repf

  n x m 複素数配列. `phaseplot` 関数は,曲線 `phase(repf(i,:))` 対 `frq(i,:)` をプロットします.

## 説明

この関数はシステムの周波数応答の位相を描画します. このシステムは異なる表現で指定することができます:

- `phaseplot(sl,...)` の場合,

  `sl` は連続系または離散系SIMOとすることができます. 多出力の場合,出力は異なる記号でプロットされます.

  この場合,周波数は以下のように指定できます:

  - 上限および下限周波数[Hz] `fmin`, `fmax`および 周波数刻み(オプション) `step`. `fmin` および `fmax`のデフォルト値は, `sl`が連続系の場合 `1.e-3`および `1.e3`, 離散系の場合 `1.e-3`, `0.5/sl.dt` (ナイキスト周波数) です. 引数`step` が省略された場合, この関数は適用型周波数刻み (calfrq参照)を使用します.

  - 行ベクトルまたは二次元配列 `frq`は 周波数をHzで指定します. 2次元配列は多出力系において各入出力の組について 異なる周波数刻みを適用する場合に使用されます.

- `phaseplot(frq,...)` の場合

  この場合,事前に計算された周波数応答により周波数位相プロットを 描画することができます. 周波数応答は複素数表現`repf`または ゲイン/位相表現`db`, `phi`で指定できます.

  `frq` および `repf` は, 行ベクトルまたは(各行が入出力の組みを表わす) n x m 配列です.

The データティップツールは位相曲線に沿ってデータを表示する際に使用できます.

## 例

        s=poly(0,'s')
        h1=syslin('c',(s^2+2*0.9*10*s+100)/(s^2+2*0.3*10.1*s+102.01))
        h2=syslin('c',(s^2+2*0.1*15.1*s+228.01)/(s^2+2*0.9*15*s+225))
        clf();phaseplot([h1;h2],0.01,100,..
                           ["$\frac{s^2+18 s+100}{s^2+6.06 s+102.1}$";
                            "$\frac{s^2+3.02 s+228.01}{s^2+27 s+225}$"])
        title('Phaseplot')

s=poly(0,'s') h1=syslin('c',(s^2+2*0.9*10*s+100)/(s^2+2*0.3*10.1*s+102.01)) h2=syslin('c',(s^2+2*0.1*15.1*s+228.01)/(s^2+2*0.9*15*s+225)) clf();phaseplot([h1;h2],0.01,100,.. ["$\frac{s^2+18 s+100}{s^2+6.06 s+102.1}$"; "$\frac{s^2+3.02 s+228.01}{s^2+27 s+225}$"]) title('Phaseplot')

## 参照

- bode
- gainplot
- repfreq
- calfrq
- datatips

## 履歴

5.4.0 関数phaseplotが導入されました.