org.mklab.nfc.matrix
インタフェース Array

すべてのスーパーインタフェース:
Grid
既知のサブインタフェースの一覧:
BaseArrayOperator<E>
既知の実装クラスの一覧:
AbstractArray, AdjacencyConstantMatrix, AdjacencyMatrix, BaseArray, BooleanMatrix

public interface Array
extends Grid

配列データを表わすインターフェースです。

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

メソッドの概要
 Array appendDown(Array value)
          下側に行列valueを付けた行列を生成します。
 Array appendRight(Array value)
          右側にvalueを付けた行列を生成します。
 BooleanMatrix compareElementWise(String operator, Array opponent)
          opponentと成分毎にoperatorで指定された演算子で比較した結果を BooleanMatrixで返します。
 void copy(Array original)
          originalの成分をコピーします。
 Array diagonalToVector()
          対角成分をからなる縦ベクトルを生成します。
 Array flipLeftRight()
          左右の列を反転した行列を生成します。
 Array flipUpDown()
          上下の行を反転した行列を生成します。
 Array getColumnVector(int column)
          指定された列を返します。
 Array getColumnVectors(int columnMin, int columnMax)
          columnMin列からcolumnMax列までの部分行列を生成します。
 Array getColumnVectors(IntMatrix columnIndex)
          columnIndexで指定された列からなる部分行列を生成します。
 Array getRowVector(int row)
          指定された行を返します。
 Array getRowVectors(int rowMin, int rowMax)
          rowMin行からrowMax行までの部分行列を生成します。
 Array getRowVectors(IntMatrix rowIndex)
          rowIndexで指定された行からなる部分行列を生成します。
 Array getSubMatrix(int row, int column, Grid block)
          blockのサイズで分割したときのrow行、 column列番目のブロック行列を返します。
 Array getSubMatrix(int rowMin, int rowMax, int columnMin, int columnMax)
          部分行列A(rowMin:rowMax,columnMin:columnMax)を生成します。
 Array getSubMatrix(int rowMin, int rowMax, IntMatrix columnIndex)
          rowMin行からrowMax行目で、columnIndexで指定された列を成分とする部分行列を生成します。
 Array getSubMatrix(int row, IntMatrix columnIndex)
          row行ベクトルのcolumnIndexで指定された成分からなる行ベクトルを生成します。
 Array getSubMatrix(IntMatrix rowIndex, int column)
          column列ベクトルのrowIndexで指定された成分からなる列ベクトルを生成します。
 Array getSubMatrix(IntMatrix rowIndex, int columnMin, int columnMax)
          columnMin列からcolumnMax列まで、rowIndex で指定された行を成分とする部分行列を生成します。
 Array getSubMatrix(IntMatrix rowIndex, IntMatrix columnIndex)
          rowIndexで指定された行、columnIndex で指定された列を成分とする部分行列を生成します。
 Array getSubVector(int min, int max)
          成分を行毎に数え、minからmaxまでの成分からなるベクトルを生成します。
 Array getSubVector(int min, int max, int by)
          成分を行毎に数え、minからmaxまでのby 飛び成分からなるベクトルを生成します。
 Array getSubVector(IntMatrix index)
          行毎に数えindexで指定した成分を成分とする部分行列を生成します。
 Array reshape(int newRowSize, int newColumnSize)
          サイズをnewRowSize*newColumnSizeに変更した行列を生成します。
 Array resize(int newRowSize, int newColmunSize)
          newRowSize*newColumnSizeにサイズ変更します。
 Array rotateLeft(int number)
          全ての成分を左方向へ回転します。
 Array rotateUp(int number)
          全ての成分を上方向へ回転します。
 void setColumnVector(int column, Array source)
          指定された列にsourceを代入します。
 void setColumnVectors(int columnMin, int columnMax, Array source)
          columnMin列からcolumnMax列にsourceを代入します。
 void setColumnVectors(IntMatrix columnIndex, Array source)
          指定された列にsourceを代入します。
 void setRowVector(int row, Array source)
          指定された行にsourceを代入します。
 void setRowVectors(int rowMin, int rowMax, Array source)
          rowMin行からrowMax行にsourceを代入します。
 void setRowVectors(IntMatrix rowIndex, Array source)
          指定された複数の行にsourceを代入します。
 void setSubMatrix(int row, int column, Grid block, Array source)
          指定した成分に行列sourceを代入します。
 void setSubMatrix(int rowMin, int rowMax, int columnMin, int columnMax, Array source)
          指定した成分に行列sourceを代入します。
 void setSubMatrix(int rowMin, int rowMax, IntMatrix columnIndex, Array source)
          rowMin列目からrowMax列目の成分のcolumnIndex で指定された行の成分に行列sourceを代入します。
 void setSubMatrix(int row, IntMatrix columnIndex, Array source)
          row列目の成分のcolumnIndexで指定された行の成分に行列sourceを代入します。
 void setSubMatrix(IntMatrix rowIndex, int column, Array source)
          rowIndexで指定した行のcolumn列に行列source を代入します。
 void setSubMatrix(IntMatrix rowIndex, int columnMin, int columnMax, Array source)
          rowIndexで指定した行のcolumnMin列からcolumnMax 列までの行列sourceを代入します。
 void setSubMatrix(IntMatrix rowIndex, IntMatrix columnIndex, Array source)
          rowIndexで指定した行のcolumnIndexで指定した列に行列sourceを代入します。
 void setSubVector(int min, int max, Array source)
          成分を行毎に数え、minからmaxまでにsourceの成分を代入します。
 void setSubVector(int min, int max, int by, Array source)
          成分を行毎に数え、minからmaxまでの成分にby飛びで sourceの成分を代入します。
 void setSubVector(IntMatrix index, Array source)
          indexで指定した各成分に行列sourceの成分に代入します。
 Array transpose()
          転置行列(this T )を生成します。
 Array vectorToDiagonal()
          縦ベクトルまたは横ベクトルの各成分を対角成分に持つ行列を生成します。
 
インタフェース org.mklab.nfc.matrix.Grid から継承されたメソッド
clone, count, exchangeColumn, exchangeRow, getColumnSize, getElementAlignment, getElementFormat, getPrintingElementsString, getPrintingString, getRowSize, hasSameColumnSize, hasSameRowSize, isEmpty, isSameSize, isSquare, isZero, length, print, print, print, printElements, printElements, removeColumnVector, removeColumnVectors, removeColumnVectors, removeRowVector, removeRowVectors, removeRowVectors, setElementAlignment, setElementFormat
 

メソッドの詳細

copy

void copy(Array original)
originalの成分をコピーします。

パラメータ:
original - コピーする行列

appendDown

Array appendDown(Array value)
下側に行列valueを付けた行列を生成します。

パラメータ:
value - 付ける行列
戻り値:
下側にvalueをつけた行列

appendRight

Array appendRight(Array value)
右側にvalueを付けた行列を生成します。

パラメータ:
value - 付ける複素数
戻り値:
右側にvalueを付けた行列

transpose

Array transpose()
転置行列(this T )を生成します。

戻り値:
転置行列

getSubMatrix

Array getSubMatrix(int rowMin,
                   int rowMax,
                   int columnMin,
                   int columnMax)
部分行列A(rowMin:rowMax,columnMin:columnMax)を生成します。

パラメータ:
rowMin - 行の始まり
rowMax - 行の終わり
columnMin - 列の始まり
columnMax - 列の終わり
戻り値:
指定された部分行列

getSubMatrix

Array getSubMatrix(IntMatrix rowIndex,
                   int column)
column列ベクトルのrowIndexで指定された成分からなる列ベクトルを生成します。

パラメータ:
rowIndex - 行指定ベクトル
column - 列指定
戻り値:
指定された部分行列

getSubMatrix

Array getSubMatrix(IntMatrix rowIndex,
                   int columnMin,
                   int columnMax)
columnMin列からcolumnMax列まで、rowIndex で指定された行を成分とする部分行列を生成します。

パラメータ:
rowIndex - 行指定ベクトル
columnMin - 列のはじまり
columnMax - 列の終わり
戻り値:
指定された部分行列

getSubMatrix

Array getSubMatrix(int row,
                   IntMatrix columnIndex)
row行ベクトルのcolumnIndexで指定された成分からなる行ベクトルを生成します。

パラメータ:
row - 行指定
columnIndex - 列指定ベクトル
戻り値:
部分行列

getSubMatrix

Array getSubMatrix(int rowMin,
                   int rowMax,
                   IntMatrix columnIndex)
rowMin行からrowMax行目で、columnIndexで指定された列を成分とする部分行列を生成します。

パラメータ:
rowMin - 行の始まり
rowMax - 行の終わり
columnIndex - 列指定ベクトル
戻り値:
部分行列

getSubMatrix

Array getSubMatrix(IntMatrix rowIndex,
                   IntMatrix columnIndex)
rowIndexで指定された行、columnIndex で指定された列を成分とする部分行列を生成します。

パラメータ:
rowIndex - 行指定ベクトル
columnIndex - 列指定ベクトル
戻り値:
部分行列

getSubVector

Array getSubVector(IntMatrix index)
行毎に数えindexで指定した成分を成分とする部分行列を生成します。

パラメータ:
index - 行番号を含むベクトル
戻り値:
部分行列

diagonalToVector

Array diagonalToVector()
対角成分をからなる縦ベクトルを生成します。

戻り値:
対角成分からなる縦ベクトル

vectorToDiagonal

Array vectorToDiagonal()
縦ベクトルまたは横ベクトルの各成分を対角成分に持つ行列を生成します。

戻り値:
対角成分からなる縦ベクトル

reshape

Array reshape(int newRowSize,
              int newColumnSize)
サイズをnewRowSize*newColumnSizeに変更した行列を生成します。

成分は、行方向の成分順に並べ替えられます。 newRowSize * newColumnSize個の成分を持たなければ、エラーとなります。

パラメータ:
newRowSize - 行の数
newColumnSize - 列の数
戻り値:
サイズ変更された行列

resize

Array resize(int newRowSize,
             int newColmunSize)
newRowSize*newColumnSizeにサイズ変更します。

reshape(int, int)とは異なり、成分位置の変更はせず, 自身より大きなサイズに変更する時は、 0が埋められ、自身より小さなサイズに変更する時は余分な成分は切り取られます。

パラメータ:
newRowSize - 指定行の数
newColmunSize - 指定列の数
戻り値:
サイズ変更後の行列

getRowVector

Array getRowVector(int row)
指定された行を返します。

パラメータ:
row - 行番号
戻り値:
指定された行

getRowVectors

Array getRowVectors(int rowMin,
                    int rowMax)
rowMin行からrowMax行までの部分行列を生成します。

パラメータ:
rowMin - 行の始まり
rowMax - 行のおわり
戻り値:
部分行列

getRowVectors

Array getRowVectors(IntMatrix rowIndex)
rowIndexで指定された行からなる部分行列を生成します。

パラメータ:
rowIndex - 取り出す行番号
戻り値:
部分行列

getColumnVector

Array getColumnVector(int column)
指定された列を返します。

パラメータ:
column - 列番号
戻り値:
指定された列

getColumnVectors

Array getColumnVectors(int columnMin,
                       int columnMax)
columnMin列からcolumnMax列までの部分行列を生成します。

パラメータ:
columnMin - 列の始まり
columnMax - 列の終わり
戻り値:
部分行列

getColumnVectors

Array getColumnVectors(IntMatrix columnIndex)
columnIndexで指定された列からなる部分行列を生成します。

パラメータ:
columnIndex - 取り出す列番号
戻り値:
部分行列

getSubMatrix

Array getSubMatrix(int row,
                   int column,
                   Grid block)
blockのサイズで分割したときのrow行、 column列番目のブロック行列を返します。

パラメータ:
row - 行番号
column - 列番号
block - 基本ブロック行列
戻り値:
部分行列

getSubVector

Array getSubVector(int min,
                   int max)
成分を行毎に数え、minからmaxまでの成分からなるベクトルを生成します。

パラメータ:
min - 成分取り出し開始位置
max - 成分取り出し終了位置
戻り値:
fromからtoまでの成分を持つ横ベクトル

getSubVector

Array getSubVector(int min,
                   int max,
                   int by)
成分を行毎に数え、minからmaxまでのby 飛び成分からなるベクトルを生成します。

パラメータ:
min - 成分取り出し開始位置
max - 成分取り出し終了位置
by - 飛ばす数
戻り値:
fromからtoまでの成分を持つ横ベクトル

compareElementWise

BooleanMatrix compareElementWise(String operator,
                                 Array opponent)
opponentと成分毎にoperatorで指定された演算子で比較した結果を BooleanMatrixで返します。

パラメータ:
operator - 比較演算子(". <", ". <=", ".>", ".>=", ".==", ".!=")
opponent - 比較対象
戻り値:
各成分に比較結果が入ったBooleanMatrix

flipLeftRight

Array flipLeftRight()
左右の列を反転した行列を生成します。

戻り値:
左右反転した行列

flipUpDown

Array flipUpDown()
上下の行を反転した行列を生成します。

戻り値:
上下反転した行列

rotateUp

Array rotateUp(int number)
全ての成分を上方向へ回転します。numberが負の場合、下方向へ回転します。

パラメータ:
number - 回転で進む数
戻り値:
全ての成分を上方向へ回転した行列

rotateLeft

Array rotateLeft(int number)
全ての成分を左方向へ回転します。numberが負の場合、右方向へ回転します。

パラメータ:
number - 回転で進む数
戻り値:
全ての成分を左方向へ回転した行列

setRowVector

void setRowVector(int row,
                  Array source)
指定された行にsourceを代入します。

パラメータ:
row - 行番号
source - 代入する行列

setRowVectors

void setRowVectors(int rowMin,
                   int rowMax,
                   Array source)
rowMin行からrowMax行にsourceを代入します。

パラメータ:
rowMin - 行番号(始まり)
rowMax - 行番号(おわり)
source - 代入する行列

setRowVectors

void setRowVectors(IntMatrix rowIndex,
                   Array source)
指定された複数の行にsourceを代入します。

パラメータ:
rowIndex - 行番号
source - 代入する行列

setColumnVector

void setColumnVector(int column,
                     Array source)
指定された列にsourceを代入します。

パラメータ:
column - 列番号
source - 代入する行列

setColumnVectors

void setColumnVectors(int columnMin,
                      int columnMax,
                      Array source)
columnMin列からcolumnMax列にsourceを代入します。

パラメータ:
columnMin - 列の始まり
columnMax - 列のおわり
source - 代入する行列

setColumnVectors

void setColumnVectors(IntMatrix columnIndex,
                      Array source)
指定された列にsourceを代入します。

パラメータ:
columnIndex - 列番号
source - 代入する行列

setSubMatrix

void setSubMatrix(int rowMin,
                  int rowMax,
                  int columnMin,
                  int columnMax,
                  Array source)
指定した成分に行列sourceを代入します。

パラメータ:
rowMin - 開始行番号
rowMax - 終了行番号
columnMin - 開始列番号
columnMax - 終了列番号
source - 代入する行列

setSubMatrix

void setSubMatrix(int row,
                  int column,
                  Grid block,
                  Array source)
指定した成分に行列sourceを代入します。

パラメータ:
row - 行番号
column - 列番号
block - 基本ブロック行列
source - 代入する行列

setSubMatrix

void setSubMatrix(IntMatrix rowIndex,
                  int column,
                  Array source)
rowIndexで指定した行のcolumn列に行列source を代入します。

パラメータ:
rowIndex - 行番号のリスト
column - 列番号
source - 代入する行列

setSubMatrix

void setSubMatrix(IntMatrix rowIndex,
                  int columnMin,
                  int columnMax,
                  Array source)
rowIndexで指定した行のcolumnMin列からcolumnMax 列までの行列sourceを代入します。

パラメータ:
rowIndex - 行番号のリスト
columnMin - 列の始まり
columnMax - 列の終わり
source - 代入する行列

setSubMatrix

void setSubMatrix(int row,
                  IntMatrix columnIndex,
                  Array source)
row列目の成分のcolumnIndexで指定された行の成分に行列sourceを代入します。

パラメータ:
row - 行番号
columnIndex - 列番号のリスト
source - 代入する行列

setSubMatrix

void setSubMatrix(int rowMin,
                  int rowMax,
                  IntMatrix columnIndex,
                  Array source)
rowMin列目からrowMax列目の成分のcolumnIndex で指定された行の成分に行列sourceを代入します。

パラメータ:
rowMin - 行の始まり
rowMax - 行の終わり
columnIndex - 列番号のリスト
source - 代入する行列

setSubMatrix

void setSubMatrix(IntMatrix rowIndex,
                  IntMatrix columnIndex,
                  Array source)
rowIndexで指定した行のcolumnIndexで指定した列に行列sourceを代入します。

パラメータ:
rowIndex - 行番号のリスト
columnIndex - 列番号のリスト
source - 代入する行列

setSubVector

void setSubVector(IntMatrix index,
                  Array source)
indexで指定した各成分に行列sourceの成分に代入します。

パラメータ:
index - 成分の番号のリスト
source - 代入する行列

setSubVector

void setSubVector(int min,
                  int max,
                  Array source)
成分を行毎に数え、minからmaxまでにsourceの成分を代入します。

パラメータ:
min - 成分の代入開始位置
max - 成分の代入終了位置
source - 代入するベクトル

setSubVector

void setSubVector(int min,
                  int max,
                  int by,
                  Array source)
成分を行毎に数え、minからmaxまでの成分にby飛びで sourceの成分を代入します。

パラメータ:
min - 成分の代入開始位置
max - 成分の代入終了位置
by - 飛ばす数
source - 代入するベクトル