org.mklab.tool.control.system.continuous
クラス BlockContinuousDynamicSystem

java.lang.Object
  上位を拡張 org.mklab.tool.control.system.SystemOperator
      上位を拡張 org.mklab.tool.control.system.BlockSystem
          上位を拡張 org.mklab.tool.control.system.continuous.BlockContinuousSystem
              上位を拡張 org.mklab.tool.control.system.continuous.BlockContinuousDynamicSystem
すべての実装されたインタフェース:
Cloneable, ArrayElement<SystemOperator>, GridElement<SystemOperator>, DifferentialSystem, ContinuousDynamicSystem, DynamicSystem
直系の既知のサブクラス:
BlockPiecewiseContinuousDynamicSystem

public class BlockContinuousDynamicSystem
extends BlockContinuousSystem
implements ContinuousDynamicSystem

微分方程式で表現されるブロック連続時間動的システムを表わすクラスです。

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

フィールドの概要
 
クラス org.mklab.tool.control.system.continuous.BlockContinuousSystem から継承されたフィールド
continuousDynamicSystems
 
コンストラクタの概要
BlockContinuousDynamicSystem(SystemOperator[][] elements, List<Integer> inputNodes, List<Integer> outputNodes)
          新しく生成されたBlockContinuousDynamicSystemオブジェクトを初期化します。
 
メソッドの概要
 Matrix differentialEquation(double t, Matrix x, Matrix inputOutput)
          時刻t、状態x、外部信号(入力と出力)inputOutput から状態の微分を返します。
 Matrix getInitialState()
          初期状態を返します。
 Matrix getState()
          現在の状態を返します。
 int getStateNumber()
          結合システムにおける状態の順番を返します。
 void initialize()
          状態などの初期化を行います。
 Matrix inputOutputEquation(double t, Matrix x)
          時刻tと状態xから外部信号(入力と出力)を返します。
 Matrix outputEquation(double t, Matrix x)
          直達項をもたないシステムの出力を返します。
 Matrix outputEquation(double t, Matrix x, Matrix u)
          直達項をもつシステムの出力を返します。
 void setInitialState(Matrix initialState)
          初期状態を設定します。
 void setState(Matrix state)
          現在の状態の設定します。
 void setStateNumber(int number)
          結合システムにおける状態の順番を設定します。
 Matrix stateEquation(double t, Matrix x, Matrix u)
          状態の微分を返します。
 
クラス org.mklab.tool.control.system.continuous.BlockContinuousSystem から継承されたメソッド
calcNodeValue, calcOutputOfDirectFeedthroughSystem, calcOutputOfNonDirectFeedthroughSystem, createStrictlyProperLinearDynamicSystem, replaceDynamicSystemList
 
クラス 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
 

コンストラクタの詳細

BlockContinuousDynamicSystem

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

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

getInitialState

public Matrix getInitialState()
インタフェース DynamicSystem の記述:
初期状態を返します。

定義:
インタフェース DynamicSystem 内の getInitialState
戻り値:
初期状態
関連項目:
DynamicSystem.getInitialState()

getState

public Matrix getState()
インタフェース DynamicSystem の記述:
現在の状態を返します。

定義:
インタフェース DynamicSystem 内の getState
戻り値:
現在の状態
関連項目:
DynamicSystem.getState()

setInitialState

public void setInitialState(Matrix initialState)
インタフェース DynamicSystem の記述:
初期状態を設定します。

定義:
インタフェース DynamicSystem 内の setInitialState
パラメータ:
initialState - 初期状態
関連項目:
DynamicSystem.setInitialState(org.mklab.nfc.matrix.Matrix)

setState

public void setState(Matrix state)
インタフェース DynamicSystem の記述:
現在の状態の設定します。

定義:
インタフェース DynamicSystem 内の setState
パラメータ:
state - 現在の状態
関連項目:
DynamicSystem.setState(org.mklab.nfc.matrix.Matrix)

stateEquation

public Matrix stateEquation(double t,
                            Matrix x,
                            Matrix u)
                     throws SolverStopException
インタフェース ContinuousDynamicSystem の記述:
状態の微分を返します。

状態方程式を表します。

定義:
インタフェース ContinuousDynamicSystem 内の stateEquation
パラメータ:
t - 時刻
x - 状態
u - 入力
戻り値:
状態の微分
例外:
SolverStopException - ソルバーが停止された場合
関連項目:
ContinuousDynamicSystem.stateEquation(double, org.mklab.nfc.matrix.Matrix, org.mklab.nfc.matrix.Matrix)

outputEquation

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

出力方程式を表します。

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

outputEquation

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

出力方程式を表します。

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

differentialEquation

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

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

inputOutputEquation

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

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

initialize

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

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

getStateNumber

public int getStateNumber()
インタフェース DynamicSystem の記述:
結合システムにおける状態の順番を返します。

定義:
インタフェース DynamicSystem 内の getStateNumber
戻り値:
結合システムにおける状態の順番
関連項目:
DynamicSystem.getStateNumber()

setStateNumber

public void setStateNumber(int number)
インタフェース DynamicSystem の記述:
結合システムにおける状態の順番を設定します。

定義:
インタフェース DynamicSystem 内の setStateNumber
パラメータ:
number - 結合システムにおける状態の順番
関連項目:
DynamicSystem.setStateNumber(int)