|
||||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
java.lang.Objectorg.mklab.tool.control.system.AdjacencyStringMatrix
public class AdjacencyStringMatrix
ブロック線図(グラフ)の隣接関係を保持する文字列行列を表すクラスです。
| コンストラクタの概要 | |
|---|---|
AdjacencyStringMatrix(int size)
大きさ sizeの隣接行列を生成します。 |
|
| メソッドの概要 | |
|---|---|
void |
addDeMultiplexer(int inputNode,
List<Integer> outputNodes)
inputNodeノードからoutputNodesの各ノードへの分離器を追加します。 |
void |
addEdge(int inputNode,
int outputNode,
ControlSystem system)
inputNodeノードとoutputNodeノードの間にエッジ(重み(ControlSystem))を追加します。 |
void |
addMIMO(List<Integer> inputNodes,
List<Integer> outputNodes,
ControlSystem system)
MOMOシステムを追加します。 |
void |
addMultiplexer(List<Integer> inputNodes,
int outputNode)
inputNodesの各ノードからoutputNodeノードへの多重器を追加します。 |
void |
addSink(int outputNode,
ControlSystem controlSystem,
int sinkNumber)
Sinkシステムを追加します |
void |
addSource(int inputNode,
ControlSystem controlSystem,
int sourceNumber)
sourceシステムを追加します。 |
void |
addSum(List<Integer> inputNodes,
int outputNode,
List<Boolean> positives)
inputNodesの各ノードからoutputNodeノードへの加算器を追加します。 |
void |
addUnitEdge(int inputNode,
int outputNode,
boolean positive)
inputNodeノードからoutputNodeノードに単位エッジ(重み=Iまたは-I)を追加します。 |
ControlSystem |
getControlSystem(String tag)
タグに対応するシステムを返します。 |
int |
getNodeDegree(int nodeNumber)
ノードの次数を返します。 |
List<Integer> |
getSortedInputSourceNodes()
ポート番号順にソートしたinputポートとsourceシステムが接続されたノードのリストを返します。 |
List<Integer> |
getSortedOutputSinkNodes()
ポート番号順にソートしたoutputポートとsinkシステムが接続されたノードのリストを返します。 |
String |
getWeightOfEdge(int inputNode,
int outputNode)
エッジの重み(隣接行列の成分)を返します。 |
boolean |
hasEdge(int inputNode,
int outputNode)
指定したノードとノードの間にエッジがあるか判定します。 |
void |
print()
行列を標準出力に出力します。 |
void |
setNodeDegree(int nodeNumber,
int degree)
ノードの次数を設定します。 |
int |
size()
隣接行列のサイズを返します。 |
String |
toString()
|
| クラス java.lang.Object から継承されたメソッド |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| コンストラクタの詳細 |
|---|
public AdjacencyStringMatrix(int size)
sizeの隣接行列を生成します。
size - 隣接行列のサイズ| メソッドの詳細 |
|---|
public void addEdge(int inputNode,
int outputNode,
ControlSystem system)
inputNodeノードとoutputNodeノードの間にエッジ(重み(ControlSystem))を追加します。
既に同じ位置にエッジが存在する場合は、重みが置き換えられます。
inputNode - 入力ノードoutputNode - 出力ノードsystem - 入力ノードと出力ノードの間のエッジの重み(ControlSystem)
public void addMIMO(List<Integer> inputNodes,
List<Integer> outputNodes,
ControlSystem system)
inputNodes - 入力ノードのリストoutputNodes - 出力ノードのリストsystem - MIMOシステム
public boolean hasEdge(int inputNode,
int outputNode)
inputNode - 入力ノードoutputNode - 出力ノード
public void addUnitEdge(int inputNode,
int outputNode,
boolean positive)
inputNodeノードからoutputNodeノードに単位エッジ(重み=Iまたは-I)を追加します。
inputNode - 入力ノードoutputNode - 出力ノードpositive - 正入力かどうか(trueであれば正入力)
public void addMultiplexer(List<Integer> inputNodes,
int outputNode)
inputNodesの各ノードからoutputNodeノードへの多重器を追加します。
inputNodes - 入力ノードのリストoutputNode - 出力ノード
public void addSum(List<Integer> inputNodes,
int outputNode,
List<Boolean> positives)
inputNodesの各ノードからoutputNodeノードへの加算器を追加します。
inputNodes - 入力ノードのリストoutputNode - 出力ノードpositives - 正入力かどうか(正入力ならばtrue)
public void addDeMultiplexer(int inputNode,
List<Integer> outputNodes)
inputNodeノードからoutputNodesの各ノードへの分離器を追加します。
inputNode - 入力ノードoutputNodes - 出力ノードのリスト
public void addSource(int inputNode,
ControlSystem controlSystem,
int sourceNumber)
inputNode - sourceシステムを接続するノードの番号controlSystem - sourceシステムsourceNumber - sourceシステムの番号
public void addSink(int outputNode,
ControlSystem controlSystem,
int sinkNumber)
outputNode - Sinkシステムを接続するノードの番号controlSystem - SinkシステムsinkNumber - Sinkの番号public List<Integer> getSortedInputSourceNodes()
public List<Integer> getSortedOutputSinkNodes()
public ControlSystem getControlSystem(String tag)
tag - システムのタグ(G1,G2,...)
ControlSystem
public String getWeightOfEdge(int inputNode,
int outputNode)
inputNode - 入力ノードoutputNode - 出力ノード
public int size()
public String toString()
Object 内の toStringObject.toString()public void print()
public int getNodeDegree(int nodeNumber)
nodeNumber - ノードの番号
public void setNodeDegree(int nodeNumber,
int degree)
nodeNumber - ノードの番号degree - ノードの次数
|
||||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||