org.mklab.tool.control.system.discrete
クラス UserDefinedDiscreteDynamicSystem

java.lang.Object
  上位を拡張 org.mklab.tool.control.system.SystemOperator
      上位を拡張 org.mklab.tool.control.system.discrete.BaseDiscreteDynamicSystem
          上位を拡張 org.mklab.tool.control.system.discrete.UserDefinedDiscreteDynamicSystem
すべての実装されたインタフェース:
Cloneable, ArrayElement<SystemOperator>, GridElement<SystemOperator>, DifferenceSystem, Sampling, DiscreteDynamicSystem, DynamicSystem, Sampler, UserDefinedSystem

public class UserDefinedDiscreteDynamicSystem
extends BaseDiscreteDynamicSystem
implements UserDefinedSystem

ユーザ定義離散時間動的システムを表わすクラスです。

バージョン:
$Revision: 1.13 $, 2007/07/16
作成者:
koga

コンストラクタの概要
UserDefinedDiscreteDynamicSystem()
          新しく生成されたUserDefinedDiscreteDynamicSystemオブジェクトを初期化します。
UserDefinedDiscreteDynamicSystem(Object obj)
          新しく生成されたUserDefinedDiscreteDynamicSystemオブジェクトを初期化します。
 
メソッドの概要
 boolean containParameter(String name)
          指定した名前のパラメータをもつか判定します。
 Set<String> getParameterNames()
          システムパラメータの名前の集合を返します。
 Object getParameterValue(String name)
          パラメータの値を返します。
 Class<?> getSystemClass()
          システムを定義したクラスを返します。
 void initialize()
          状態などの初期化を行います。
 Matrix outputEquation(int k, Matrix x)
          直達項をもたないシステムの出力を返します。
 Matrix outputEquation(int k, Matrix x, Matrix u)
          直達項をもつシステムの出力を返します。
 void setDirectFeedthrough(boolean hasDirectFeedthrough)
          直達項があるか(出力が入力に直接依存するか)設定します。
 void setInitializeFunction(Method method)
          システムの初期化処理を定義したメソッドを設定します。
 void setOutputFunction(Method method)
          システムの出力方程式を定義したメソッドを設定します。
 void setParameterValue(String name, Object value)
          パラメータの値を設定します。
 void setStateFunction(Method method)
          システムの状態方程式を定義したメソッドを設定します。
 void setSystemClass(Class<?> klass)
          システムを定義したクラスを設定します。
 void setUpdateFunction(Method method)
          システムの更新処理を定義したメソッドを設定します。
 Matrix stateEquation(int k, Matrix x, Matrix u)
          (k+1)ステップの状態を返します。
 void update()
          パラメータを更新します。
 
クラス org.mklab.tool.control.system.discrete.BaseDiscreteDynamicSystem から継承されたメソッド
differenceEquation, differenceEquation, equals, getInitialState, getNextSamplingTime, getSamplingInterval, getState, getStateNumber, hashCode, inputOutputEquation, inputOutputEquation, isAtSamplingPoint, outputEquation, outputEquation, setAtSamplingPoint, setInitialState, setSamplingInterval, setState, setStateNumber, stateEquation
 
クラス org.mklab.tool.control.system.SystemOperator から継承されたメソッド
clone, compare, createArray, createArray, createGrid, createGrid, createZero, getInputSize, getLinearSystem, getOutputSize, getParameter, getParameters, getStateSize, hasDirectFeedthrough, isAutoSize, isDynamic, isForecdSystem, isInlet, isLinear, isOutlet, isSISO, isSizeDefined, isStatic, isTransformableFrom, isTransformableTo, isZero, resetAutoSize, setAutoSize, setDynamic, setForcedSystem, setHasDirectFeedthrough, setInlet, setInputSize, setLinear, setOutlet, setOutputSize, setParameter, setStateSize, setupParameters, toString, toString, transformFrom, transformTo
 
クラス java.lang.Object から継承されたメソッド
finalize, getClass, notify, notifyAll, wait, wait, wait
 

コンストラクタの詳細

UserDefinedDiscreteDynamicSystem

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


UserDefinedDiscreteDynamicSystem

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

パラメータ:
obj - インスタンスメソッドによる定義の場合の、メソッドを所持するインスタンス。静的メソッドの場合はnull
メソッドの詳細

outputEquation

public Matrix outputEquation(int k,
                             Matrix x,
                             Matrix u)
                      throws SolverStopException
インタフェース DiscreteDynamicSystem の記述:
直達項をもつシステムの出力を返します。

出力方程式を表します。

定義:
インタフェース DiscreteDynamicSystem 内の outputEquation
オーバーライド:
クラス BaseDiscreteDynamicSystem 内の outputEquation
パラメータ:
k - ステップ
x - 状態
u - 入力
戻り値:
出力
例外:
SolverStopException - ソルバーが停止された場合
関連項目:
BaseDiscreteDynamicSystem.outputEquation(int, org.mklab.nfc.matrix.Matrix, org.mklab.nfc.matrix.Matrix)

outputEquation

public Matrix outputEquation(int k,
                             Matrix x)
                      throws SolverStopException
インタフェース DiscreteDynamicSystem の記述:
直達項をもたないシステムの出力を返します。

出力方程式を表します。

定義:
インタフェース DiscreteDynamicSystem 内の outputEquation
オーバーライド:
クラス BaseDiscreteDynamicSystem 内の outputEquation
パラメータ:
k - ステップ
x - 状態
戻り値:
出力
例外:
SolverStopException - ソルバーが停止された場合
関連項目:
BaseDiscreteDynamicSystem.outputEquation(int, org.mklab.nfc.matrix.Matrix)

stateEquation

public Matrix stateEquation(int k,
                            Matrix x,
                            Matrix u)
                     throws SolverStopException
インタフェース DiscreteDynamicSystem の記述:
(k+1)ステップの状態を返します。

状態方程式を表します。

定義:
インタフェース DiscreteDynamicSystem 内の stateEquation
パラメータ:
k - ステップ
x - 状態
u - 入力
戻り値:
(k+1)ステップの状態
例外:
SolverStopException - ソルバーが停止された場合
関連項目:
DiscreteDynamicSystem.stateEquation(int, org.mklab.nfc.matrix.Matrix, org.mklab.nfc.matrix.Matrix)

setSystemClass

public void setSystemClass(Class<?> klass)
インタフェース UserDefinedSystem の記述:
システムを定義したクラスを設定します。

定義:
インタフェース UserDefinedSystem 内の setSystemClass
パラメータ:
klass - システムを定義したクラス
関連項目:
UserDefinedSystem.setSystemClass(java.lang.Class)

getSystemClass

public Class<?> getSystemClass()
インタフェース UserDefinedSystem の記述:
システムを定義したクラスを返します。

定義:
インタフェース UserDefinedSystem 内の getSystemClass
戻り値:
システムを定義したクラス
関連項目:
UserDefinedSystem.getSystemClass()

setStateFunction

public void setStateFunction(Method method)
                      throws SecurityException
システムの状態方程式を定義したメソッドを設定します。

パラメータ:
method - システムの状態方程式を定義したメソッド
例外:
SecurityException - メソッドにアクセスする権利が無い場合

setOutputFunction

public void setOutputFunction(Method method)
                       throws SecurityException
システムの出力方程式を定義したメソッドを設定します。

パラメータ:
method - システムの出力方程式を定義したメソッド
例外:
SecurityException - メソッドにアクセスする権利が無い場合

setInitializeFunction

public void setInitializeFunction(Method method)
                           throws SecurityException
インタフェース UserDefinedSystem の記述:
システムの初期化処理を定義したメソッドを設定します。

定義:
インタフェース UserDefinedSystem 内の setInitializeFunction
パラメータ:
method - システムの初期化処理を定義したメソッド
例外:
SecurityException - メソッドにアクセスする権利が無い場合
関連項目:
UserDefinedSystem.setInitializeFunction(java.lang.reflect.Method)

setUpdateFunction

public void setUpdateFunction(Method method)
                       throws SecurityException
インタフェース UserDefinedSystem の記述:
システムの更新処理を定義したメソッドを設定します。

定義:
インタフェース UserDefinedSystem 内の setUpdateFunction
パラメータ:
method - システムの更新処理を定義したメソッド
例外:
SecurityException - メソッドにアクセスする権利が無い場合
関連項目:
UserDefinedSystem.setUpdateFunction(java.lang.reflect.Method)

getParameterValue

public Object getParameterValue(String name)
                         throws NoSuchParameterException
インタフェース UserDefinedSystem の記述:
パラメータの値を返します。

定義:
インタフェース UserDefinedSystem 内の getParameterValue
パラメータ:
name - パラメータの名前
戻り値:
パラメータの値
例外:
NoSuchParameterException - パラメータが存在しない場合、パラメータにアクセスできない場合
関連項目:
UserDefinedSystem.getParameterValue(java.lang.String)

getParameterNames

public Set<String> getParameterNames()
                              throws NoSuchParameterException
インタフェース UserDefinedSystem の記述:
システムパラメータの名前の集合を返します。

定義:
インタフェース UserDefinedSystem 内の getParameterNames
戻り値:
システムパラメータの名前の集合
例外:
NoSuchParameterException - パラメータにアクセスできない場合
関連項目:
UserDefinedSystem.getParameterNames()

setParameterValue

public void setParameterValue(String name,
                              Object value)
                       throws NoSuchParameterException
インタフェース UserDefinedSystem の記述:
パラメータの値を設定します。

定義:
インタフェース UserDefinedSystem 内の setParameterValue
パラメータ:
name - パラメータの名前
value - パラメータの値
例外:
NoSuchParameterException - パラメータが存在しない場合、パラメータにアクセスできない場合
関連項目:
UserDefinedSystem.setParameterValue(java.lang.String, java.lang.Object)

containParameter

public boolean containParameter(String name)
インタフェース UserDefinedSystem の記述:
指定した名前のパラメータをもつか判定します。

定義:
インタフェース UserDefinedSystem 内の containParameter
パラメータ:
name - パラメータの名前
戻り値:
指定した名前のパラメータをもつならばtrue、そうでなければfalse
関連項目:
UserDefinedSystem.containParameter(java.lang.String)

update

public void update()
            throws ParameterException
インタフェース UserDefinedSystem の記述:
パラメータを更新します。

定義:
インタフェース UserDefinedSystem 内の update
例外:
ParameterException - パラメータに関する問題がある場合
関連項目:
UserDefinedSystem.update()

initialize

public void initialize()
クラス SystemOperator の記述:
状態などの初期化を行います。

オーバーライド:
クラス BaseDiscreteDynamicSystem 内の initialize
関連項目:
BaseDiscreteStaticSystem.initialize()

setDirectFeedthrough

public void setDirectFeedthrough(boolean hasDirectFeedthrough)
直達項があるか(出力が入力に直接依存するか)設定します。

パラメータ:
hasDirectFeedthrough - 直達項があれば(出力が入力に直接依存すれば)true、そうでなければfalse