org.mklab.tool.control.system.sampled
クラス BlockSampledDataDynamicSystem

java.lang.Object
  上位を拡張 org.mklab.tool.control.system.SystemOperator
      上位を拡張 org.mklab.tool.control.system.BlockSystem
          上位を拡張 org.mklab.tool.control.system.sampled.BlockSamplingSystem
              上位を拡張 org.mklab.tool.control.system.sampled.BlockSampledDataSystem
                  上位を拡張 org.mklab.tool.control.system.sampled.BlockSampledDataDynamicSystem
すべての実装されたインタフェース:
Cloneable, ArrayElement<SystemOperator>, GridElement<SystemOperator>, DifferentialDifferenceSystem, Sampling, SampledDataDynamicSystem
直系の既知のサブクラス:
BlockPiecewiseSampledDataDynamicSystem

public class BlockSampledDataDynamicSystem
extends BlockSampledDataSystem
implements SampledDataDynamicSystem

ブロックサンプル値動的システムを表わすクラスです。

バージョン:
$Revision$
作成者:
koga

フィールドの概要
 
クラス org.mklab.tool.control.system.sampled.BlockSampledDataSystem から継承されたフィールド
continuousDynamicSystems
 
クラス org.mklab.tool.control.system.sampled.BlockSamplingSystem から継承されたフィールド
discreteDynamicSystems, discreteDynamicSystemsUpdatedAtNextSamplingPoint, discreteStaticSystems, discreteStaticSystemsUpdatedAtNextSamplingPoint, time
 
コンストラクタの概要
BlockSampledDataDynamicSystem(SystemOperator[][] elements, List<Integer> inputNodes, List<Integer> outputNodes)
          新しく生成されたBlockSampledDataDynamicSystemオブジェクトを初期化します。
 
メソッドの概要
 Matrix continuousStateEquation(double t, Matrix xc, Matrix xd, Matrix inputOutput)
          連続時間システムの状態の微分を返します。
 Matrix differenceEquation(double t, Matrix xc, Matrix xd, Matrix inputOutput)
          時刻t、連続状態xc、離散状態xd、外部信号(入力と出力) inputOutputから離散状態の次ステップの値を返します。
 Matrix differentialEquation(double t, Matrix xc, Matrix xd, Matrix inputOutput)
          時刻t、連続状態xc、離散状態xd、外部信号(入力と出力) inputOutputから連続状態の微分値を返します。
 Matrix discreteStateEquation(double t, Matrix xc, Matrix xd, Matrix inputOutput)
          離散時間システムの次ステップの状態を返します。
 Matrix getContinuousInitialState()
          連続時間システムの初期状態を返します。
 Matrix getContinuousState()
          現在の連続時間システムの状態を返します。
 int getContinuousStateSize()
          連続時間システムの状態の数を返します。
 Matrix getDiscreteInitialState()
          離散時間システムの初期状態を返します。
 Matrix getDiscreteState()
          現在の離散時間システムの状態を返します。
 int getDiscreteStateSize()
          離散時間システムの状態の数を返します。
 void initialize()
          状態などの初期化を行います。
 Matrix inputOutputEquation(double t, Matrix xc, Matrix xd)
          時刻t、連続状態xc、離散状態xdから外部信号(入力と出力)を返します。
 Matrix outputEquation(double t, Matrix xc, Matrix xd)
          直達項をもたないシステムの出力を返します。
 Matrix outputEquation(double t, Matrix xc, Matrix xd, Matrix input)
          直達項をもつシステムの出力を返します。
 void setContinuousInitialState(Matrix initialState)
          連続時間システムの初期状態を設定します。
 void setContinuousState(Matrix state)
          現在の連続時間システムの状態の設定します。
protected  void setContinuousStateSize(int stateSize)
          連続時間システムの状態の数を設定します。
 void setDiscreteInitialState(Matrix initialState)
          離散時間システムの初期状態を設定します。
 void setDiscreteState(Matrix state)
          現在の離散時間システムの状態の設定します。
protected  void setDiscreteStateSize(int stateSize)
          離散時間システムの状態の数を設定します。
 
クラス org.mklab.tool.control.system.sampled.BlockSampledDataSystem から継承されたメソッド
calcNodeValue, calcOutputOfDirectFeedthroughSystem, calcOutputOfNonDirectFeedthroughSystem, createStrictlyProperLinearDynamicSystem, replaceDynamicSystemList
 
クラス org.mklab.tool.control.system.sampled.BlockSamplingSystem から継承されたメソッド
getNextSamplingTime, getSingleSamplingInterval, isAtSamplingPoint, isSingleRate, resetSystemsUpdatedAtNextSamplingPoint, setAtSamplingPoint
 
クラス org.mklab.tool.control.system.BlockSystem から継承されたメソッド
calcNodeValue, calcOutputOfDirectFeedthroughSystem, getInputNodeSize, getInputNodeValueOf, getLinearSystem, getNodeSize, getOutputNodeSize, getOutputNodeValue, getSingleSystem, getSystemOperator, isAutoSize, isSingleSystem, resetAutoSize, resetNodeValue, separateDirectFeedthroughAndNonDirectFeedthrough, setAutoSize, setBlockMatrix, setInputNodeValue, setInputSize, setNodeValueOfNoInputNode, setOutputSize, setZeroSizeToUnDefinedInputPortOutputPort
 
クラス org.mklab.tool.control.system.SystemOperator から継承されたメソッド
clone, compare, createArray, createArray, createGrid, createGrid, createZero, equals, getInputSize, getOutputSize, getParameter, getParameters, getStateSize, hasDirectFeedthrough, hashCode, isDynamic, isForecdSystem, isInlet, isLinear, isOutlet, isSISO, isSizeDefined, isStatic, isTransformableFrom, isTransformableTo, isZero, setDynamic, setForcedSystem, setHasDirectFeedthrough, setInlet, setLinear, setOutlet, setParameter, setStateSize, setupParameters, toString, toString, transformFrom, transformTo
 
クラス java.lang.Object から継承されたメソッド
finalize, getClass, notify, notifyAll, wait, wait, wait
 
インタフェース org.mklab.nfc.ode.Sampling から継承されたメソッド
getNextSamplingTime, isAtSamplingPoint, setAtSamplingPoint
 

コンストラクタの詳細

BlockSampledDataDynamicSystem

public BlockSampledDataDynamicSystem(SystemOperator[][] elements,
                                     List<Integer> inputNodes,
                                     List<Integer> outputNodes)
新しく生成されたBlockSampledDataDynamicSystemオブジェクトを初期化します。

パラメータ:
elements - 隣接行列
inputNodes - 入力ノードの番号のリスト(番号は1から始まる)
outputNodes - 出力ノードの番号のリスト(番号は1から始まる)
メソッドの詳細

getContinuousStateSize

public int getContinuousStateSize()
インタフェース SampledDataDynamicSystem の記述:
連続時間システムの状態の数を返します。

定義:
インタフェース SampledDataDynamicSystem 内の getContinuousStateSize
戻り値:
連続時間システムの状態の数
関連項目:
SampledDataDynamicSystem.getContinuousStateSize()

getDiscreteStateSize

public int getDiscreteStateSize()
インタフェース SampledDataDynamicSystem の記述:
離散時間システムの状態の数を返します。

定義:
インタフェース SampledDataDynamicSystem 内の getDiscreteStateSize
戻り値:
離散時間システムの状態の数
関連項目:
SampledDataDynamicSystem.getDiscreteStateSize()

setContinuousStateSize

protected void setContinuousStateSize(int stateSize)
連続時間システムの状態の数を設定します。

パラメータ:
stateSize - 連続時間システムの状態の数

setDiscreteStateSize

protected void setDiscreteStateSize(int stateSize)
離散時間システムの状態の数を設定します。

パラメータ:
stateSize - 離散時間システムの状態の数

getContinuousInitialState

public Matrix getContinuousInitialState()
インタフェース SampledDataDynamicSystem の記述:
連続時間システムの初期状態を返します。

定義:
インタフェース SampledDataDynamicSystem 内の getContinuousInitialState
戻り値:
連続時間システムの初期状態
関連項目:
SampledDataDynamicSystem.getContinuousInitialState()

getDiscreteInitialState

public Matrix getDiscreteInitialState()
インタフェース SampledDataDynamicSystem の記述:
離散時間システムの初期状態を返します。

定義:
インタフェース SampledDataDynamicSystem 内の getDiscreteInitialState
戻り値:
離散時間システムの初期状態
関連項目:
SampledDataDynamicSystem.getDiscreteInitialState()

getContinuousState

public Matrix getContinuousState()
インタフェース SampledDataDynamicSystem の記述:
現在の連続時間システムの状態を返します。

定義:
インタフェース SampledDataDynamicSystem 内の getContinuousState
戻り値:
現在の連続時間システムの状態
関連項目:
SampledDataDynamicSystem.getContinuousState()

getDiscreteState

public Matrix getDiscreteState()
インタフェース SampledDataDynamicSystem の記述:
現在の離散時間システムの状態を返します。

定義:
インタフェース SampledDataDynamicSystem 内の getDiscreteState
戻り値:
現在の離散時間システムの状態
関連項目:
SampledDataDynamicSystem.getDiscreteState()

setContinuousInitialState

public void setContinuousInitialState(Matrix initialState)
インタフェース SampledDataDynamicSystem の記述:
連続時間システムの初期状態を設定します。

定義:
インタフェース SampledDataDynamicSystem 内の setContinuousInitialState
パラメータ:
initialState - 連続時間システムの初期状態
関連項目:
SampledDataDynamicSystem.setContinuousInitialState(org.mklab.nfc.matrix.Matrix)

setDiscreteInitialState

public void setDiscreteInitialState(Matrix initialState)
インタフェース SampledDataDynamicSystem の記述:
離散時間システムの初期状態を設定します。

定義:
インタフェース SampledDataDynamicSystem 内の setDiscreteInitialState
パラメータ:
initialState - 離散時間システムの初期状態
関連項目:
SampledDataDynamicSystem.setDiscreteInitialState(org.mklab.nfc.matrix.Matrix)

setContinuousState

public void setContinuousState(Matrix state)
インタフェース SampledDataDynamicSystem の記述:
現在の連続時間システムの状態の設定します。

定義:
インタフェース SampledDataDynamicSystem 内の setContinuousState
パラメータ:
state - 現在の連続時間システムの状態
関連項目:
SampledDataDynamicSystem.setContinuousState(org.mklab.nfc.matrix.Matrix)

setDiscreteState

public void setDiscreteState(Matrix state)
インタフェース SampledDataDynamicSystem の記述:
現在の離散時間システムの状態の設定します。

定義:
インタフェース SampledDataDynamicSystem 内の setDiscreteState
パラメータ:
state - 現在の離散時間システムの状態
関連項目:
SampledDataDynamicSystem.setDiscreteState(org.mklab.nfc.matrix.Matrix)

continuousStateEquation

public Matrix continuousStateEquation(double t,
                                      Matrix xc,
                                      Matrix xd,
                                      Matrix inputOutput)
                               throws SolverStopException
インタフェース SampledDataDynamicSystem の記述:
連続時間システムの状態の微分を返します。

連続時間システムの状態方程式を表します。

定義:
インタフェース SampledDataDynamicSystem 内の continuousStateEquation
パラメータ:
t - 時刻
xc - 連続時間システムの状態
xd - 離散時間システムの状態
inputOutput - 入力と出力
戻り値:
連続時間システムの状態の微分
例外:
SolverStopException - ソルバーが停止された場合
関連項目:
SampledDataDynamicSystem.continuousStateEquation(double, org.mklab.nfc.matrix.Matrix, org.mklab.nfc.matrix.Matrix, org.mklab.nfc.matrix.Matrix)

discreteStateEquation

public Matrix discreteStateEquation(double t,
                                    Matrix xc,
                                    Matrix xd,
                                    Matrix inputOutput)
                             throws SolverStopException
インタフェース SampledDataDynamicSystem の記述:
離散時間システムの次ステップの状態を返します。

離散時間システムの状態方程式を表します。

定義:
インタフェース SampledDataDynamicSystem 内の discreteStateEquation
パラメータ:
t - 時刻
xc - 連続時間システムの状態
xd - 離散時間システムの状態
inputOutput - 入力と出力
戻り値:
離散時間システムの次ステップの状態
例外:
SolverStopException - ソルバーが停止された場合
関連項目:
SampledDataDynamicSystem.discreteStateEquation(double, org.mklab.nfc.matrix.Matrix, org.mklab.nfc.matrix.Matrix, org.mklab.nfc.matrix.Matrix)

outputEquation

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

出力方程式を表します。

定義:
インタフェース SampledDataDynamicSystem 内の outputEquation
パラメータ:
t - 時刻
xc - 連続時間システムの状態
xd - 離散時間システムの状態
戻り値:
出力
例外:
SolverStopException - ソルバーが停止された場合
関連項目:
SampledDataDynamicSystem.outputEquation(double, org.mklab.nfc.matrix.Matrix, org.mklab.nfc.matrix.Matrix)

outputEquation

public Matrix outputEquation(double t,
                             Matrix xc,
                             Matrix xd,
                             Matrix input)
                      throws SolverStopException
インタフェース SampledDataDynamicSystem の記述:
直達項をもつシステムの出力を返します。

出力方程式を表します。

定義:
インタフェース SampledDataDynamicSystem 内の outputEquation
パラメータ:
t - 時刻
xc - 連続時間システムの状態
xd - 離散時間システムの状態
input - 入力
戻り値:
出力
例外:
SolverStopException - ソルバーが停止された場合
関連項目:
SampledDataDynamicSystem.outputEquation(double, org.mklab.nfc.matrix.Matrix, org.mklab.nfc.matrix.Matrix, org.mklab.nfc.matrix.Matrix)

differentialEquation

public Matrix differentialEquation(double t,
                                   Matrix xc,
                                   Matrix xd,
                                   Matrix inputOutput)
                            throws SolverStopException
インタフェース DifferentialDifferenceSystem の記述:
時刻t、連続状態xc、離散状態xd、外部信号(入力と出力) inputOutputから連続状態の微分値を返します。

定義:
インタフェース DifferentialDifferenceSystem 内の differentialEquation
パラメータ:
t - 時刻
xc - 時刻tにおける連続状態
xd - 時刻tにおける離散状態
inputOutput - 時刻tにおける外部信号(入力と出力)
戻り値:
状態の微分
例外:
SolverStopException - ソルバーが停止された場合
関連項目:
DifferentialDifferenceSystem.differentialEquation(double, org.mklab.nfc.matrix.Matrix, org.mklab.nfc.matrix.Matrix, org.mklab.nfc.matrix.Matrix)

differenceEquation

public Matrix differenceEquation(double t,
                                 Matrix xc,
                                 Matrix xd,
                                 Matrix inputOutput)
                          throws SolverStopException
インタフェース DifferentialDifferenceSystem の記述:
時刻t、連続状態xc、離散状態xd、外部信号(入力と出力) inputOutputから離散状態の次ステップの値を返します。

定義:
インタフェース DifferentialDifferenceSystem 内の differenceEquation
パラメータ:
t - 時刻
xc - 時刻tにおける連続状態
xd - 時刻tにおける離散状態
inputOutput - 時刻tにおける外部信号(入力と出力)
戻り値:
状態の微分
例外:
SolverStopException - ソルバーが停止された場合
関連項目:
DifferentialDifferenceSystem.differenceEquation(double, org.mklab.nfc.matrix.Matrix, org.mklab.nfc.matrix.Matrix, org.mklab.nfc.matrix.Matrix)

inputOutputEquation

public Matrix inputOutputEquation(double t,
                                  Matrix xc,
                                  Matrix xd)
                           throws SolverStopException
インタフェース DifferentialDifferenceSystem の記述:
時刻t、連続状態xc、離散状態xdから外部信号(入力と出力)を返します。

定義:
インタフェース DifferentialDifferenceSystem 内の inputOutputEquation
パラメータ:
t - 時刻
xc - 時刻tにおける連続状態
xd - 時刻tにおける離散状態
戻り値:
時刻tおける外部信号(入力と出力)
例外:
SolverStopException - ソルバーが停止された場合
関連項目:
DifferentialDifferenceSystem.inputOutputEquation(double, org.mklab.nfc.matrix.Matrix, org.mklab.nfc.matrix.Matrix)

initialize

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

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