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

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
すべての実装されたインタフェース:
Cloneable, ArrayElement<SystemOperator>, GridElement<SystemOperator>, Sampling
直系の既知のサブクラス:
BlockSampledDataDynamicSystem, BlockSampledDataStaticSystem

public abstract class BlockSampledDataSystem
extends BlockSamplingSystem

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

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

フィールドの概要
protected  List<ContinuousDynamicSystem> continuousDynamicSystems
          連続時間動的システムのリスト
 
クラス org.mklab.tool.control.system.sampled.BlockSamplingSystem から継承されたフィールド
discreteDynamicSystems, discreteDynamicSystemsUpdatedAtNextSamplingPoint, discreteStaticSystems, discreteStaticSystemsUpdatedAtNextSamplingPoint, time
 
コンストラクタの概要
BlockSampledDataSystem(SystemOperator[][] elements, List<Integer> inputNodes, List<Integer> outputNodes)
          新しく生成されたBlockSampledDataSystemオブジェクトを初期化します。
 
メソッドの概要
protected  void calcNodeValue(double t)
          ノードの値を計算します。
protected  Matrix calcOutputOfDirectFeedthroughSystem(SystemOperator system, Matrix u)
          直達項のあるシステムの出力を求めます。
protected  Matrix calcOutputOfNonDirectFeedthroughSystem(SystemOperator system)
          直達項の無いシステムの出力を求めます。
protected  SystemOperator createStrictlyProperLinearDynamicSystem(SystemOperator system)
          強プロパーな線形動的システムを生成します。
protected  boolean replaceDynamicSystemList(SystemOperator oldSystem, SystemOperator newSystem)
          動的システムのリストの成分を新しいシステムに入れ替えます。
 
クラス org.mklab.tool.control.system.sampled.BlockSamplingSystem から継承されたメソッド
getNextSamplingTime, getSingleSamplingInterval, initialize, 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
 

フィールドの詳細

continuousDynamicSystems

protected List<ContinuousDynamicSystem> continuousDynamicSystems
連続時間動的システムのリスト

コンストラクタの詳細

BlockSampledDataSystem

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

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

calcNodeValue

protected void calcNodeValue(double t)
                      throws SolverStopException
ノードの値を計算します。

パラメータ:
t - 時間
例外:
SolverStopException - ソルバーが停止された場合

calcOutputOfDirectFeedthroughSystem

protected Matrix calcOutputOfDirectFeedthroughSystem(SystemOperator system,
                                                     Matrix u)
                                              throws SolverStopException
クラス BlockSystem の記述:
直達項のあるシステムの出力を求めます。

定義:
クラス BlockSystem 内の calcOutputOfDirectFeedthroughSystem
パラメータ:
system - 直達項のあるシステム
u - 入力
戻り値:
直達項のあるシステムの出力
例外:
SolverStopException - ソルバーが停止された場合
関連項目:
BlockSystem.calcOutputOfDirectFeedthroughSystem(org.mklab.tool.control.system.SystemOperator, org.mklab.nfc.matrix.Matrix)

calcOutputOfNonDirectFeedthroughSystem

protected Matrix calcOutputOfNonDirectFeedthroughSystem(SystemOperator system)
                                                 throws SolverStopException
クラス BlockSystem の記述:
直達項の無いシステムの出力を求めます。

定義:
クラス BlockSystem 内の calcOutputOfNonDirectFeedthroughSystem
パラメータ:
system - 直達項の無いシステム
戻り値:
直達項の無いシステムの出力
例外:
SolverStopException - ソルバーが停止された場合
関連項目:
BlockSystem.calcOutputOfNonDirectFeedthroughSystem(org.mklab.tool.control.system.SystemOperator)

createStrictlyProperLinearDynamicSystem

protected SystemOperator createStrictlyProperLinearDynamicSystem(SystemOperator system)
クラス BlockSystem の記述:
強プロパーな線形動的システムを生成します。

定義:
クラス BlockSystem 内の createStrictlyProperLinearDynamicSystem
パラメータ:
system - バイプロパーな線形動的システム
戻り値:
強プロパーな線形動的システム
関連項目:
BlockSystem.createStrictlyProperLinearDynamicSystem(org.mklab.tool.control.system.SystemOperator)

replaceDynamicSystemList

protected boolean replaceDynamicSystemList(SystemOperator oldSystem,
                                           SystemOperator newSystem)
クラス BlockSystem の記述:
動的システムのリストの成分を新しいシステムに入れ替えます。

オーバーライド:
クラス BlockSamplingSystem 内の replaceDynamicSystemList
パラメータ:
oldSystem - リストに登録されている旧システム
newSystem - リストに登録する新システム
戻り値:
入れ替えが成功した場合true
関連項目:
BlockSystem.replaceDynamicSystemList(org.mklab.tool.control.system.SystemOperator, org.mklab.tool.control.system.SystemOperator)