org.mklab.tool.control
クラス Nyquist

java.lang.Object
  上位を拡張 org.mklab.tool.control.Nyquist

public class Nyquist
extends Object

連続時間システムのナイキスト線図を描画するためのデータ(周波数応答)を求めるクラスです。

Nyquist response of MIMO continuous-time linear state system

バージョン:
$Revision: 1.64 $
作成者:
koga
関連項目:
Bode

コンストラクタの概要
Nyquist(LinearSystem system)
          新しく生成されたNyquistオブジェクトを初期化します。
Nyquist(LinearSystem system, double samplingInterval)
          新しく生成されたNyquistオブジェクトを初期化します。
 
メソッドの概要
 List<List<NumericalMatrixOperator<?>>> getRealAndImag(NumericalMatrixOperator<?> angularFrequncies)
          システムのナイキスト応答(実部、虚部、評価周波数)を返します。
 List<NumericalMatrixOperator<?>> getRealAndImag(NumericalMatrixOperator<?> angularFrequncies, int inputNumber)
          システムのinputNumber番目の入力に関するナイキスト応答(実部、虚部、評価周波数)を返します。
 boolean isDrawingForNegativeFrequency()
          負の周波数について描画するか判定します。
 boolean isDrawingForPositiveFrequency()
          正の周波数について描画するか判定します。
static void main(String[] args)
          メインメソッド
 void plot(Gnuplot gnuplot)
          ナイキスト線図をプロットします。
 void plot(Gnuplot gnuplot, DoubleMatrix angularFrequncies)
          ナイキスト線図をプロットします。
 void setDrawingForNegativeFrequency(boolean isDrawingForNegativeFrequency)
          負の周波数について描画するか設定します。
 void setDrawingForPositiveFrequency(boolean isDrawingForPositiveFrequency)
          正の周波数について描画するか設定します。
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

Nyquist

public Nyquist(LinearSystem system)
新しく生成されたNyquistオブジェクトを初期化します。

パラメータ:
system - 線形システム

Nyquist

public Nyquist(LinearSystem system,
               double samplingInterval)
新しく生成されたNyquistオブジェクトを初期化します。

パラメータ:
system - 線形システム
samplingInterval - サンプリング周期
メソッドの詳細

getRealAndImag

public List<List<NumericalMatrixOperator<?>>> getRealAndImag(NumericalMatrixOperator<?> angularFrequncies)
システムのナイキスト応答(実部、虚部、評価周波数)を返します。

パラメータ:
angularFrequncies - 評価する周波数(radian/s)
戻り値:
システムのナイキスト応答(実部、虚部、評価周波数)

getRealAndImag

public List<NumericalMatrixOperator<?>> getRealAndImag(NumericalMatrixOperator<?> angularFrequncies,
                                                       int inputNumber)
システムのinputNumber番目の入力に関するナイキスト応答(実部、虚部、評価周波数)を返します。

パラメータ:
angularFrequncies - 評価する周波数(rad/sec)の列
inputNumber - 入力番号
戻り値:
周波数応答(実部、虚部、評価周波数)

plot

public void plot(Gnuplot gnuplot)
ナイキスト線図をプロットします。

パラメータ:
gnuplot - Gnuplot

plot

public void plot(Gnuplot gnuplot,
                 DoubleMatrix angularFrequncies)
ナイキスト線図をプロットします。

パラメータ:
gnuplot - Gnuplot
angularFrequncies - 評価する周波数(radian/s)

main

public static void main(String[] args)
                 throws InterruptedException,
                        IOException
メインメソッド

パラメータ:
args - コマンドライン引数
例外:
IOException - キーボードから入力できない場合
InterruptedException - キャンセルボタンが押された場合

isDrawingForPositiveFrequency

public boolean isDrawingForPositiveFrequency()
正の周波数について描画するか判定します。

戻り値:
正の周波数について描画するならばtrue

setDrawingForPositiveFrequency

public void setDrawingForPositiveFrequency(boolean isDrawingForPositiveFrequency)
正の周波数について描画するか設定します。

パラメータ:
isDrawingForPositiveFrequency - 正の周波数について描画するならばtrue

isDrawingForNegativeFrequency

public boolean isDrawingForNegativeFrequency()
負の周波数について描画するか判定します。

戻り値:
負の周波数について描画するならばtrue

setDrawingForNegativeFrequency

public void setDrawingForNegativeFrequency(boolean isDrawingForNegativeFrequency)
負の周波数について描画するか設定します。

パラメータ:
isDrawingForNegativeFrequency - 負の周波数について描画するならばtrue