|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Objectorg.mklab.nfc.matrix.NumericalMatrixUtil
public class NumericalMatrixUtil
NumericalMatrix
のユーティリティクラスです。
コンストラクタの概要 | |
---|---|
NumericalMatrixUtil()
|
メソッドの概要 | ||
---|---|---|
static NumericalScalar<?>[][] |
absElementWise(NumericalScalar<?>[][] matrix)
全ての成分の絶対値を成分とする行列を生成します。 |
|
static NumericalScalar<?>[][] |
argumentElementWise(NumericalScalar<?>[][] matrix)
自身の各成分の偏角を成分に持つ行列を返します。 |
|
static
|
atan2ElementWise(E[][] a1,
double[][] a2)
行列の成分毎に逆正接(2)を計算し、計算結果を成分とする行列を生成します。 |
|
static NumericalScalar<?>[][] |
atan2ElementWise(NumericalScalar<?>[][] a1,
NumericalScalar<?>[][] a2)
行列の成分毎に逆正接(2)を計算し、計算結果を成分とする行列を生成します。 |
|
static
|
createComplexArray(E[][] rePart,
E[][] imPart)
複素行列の成分を返します。 |
|
static
|
createComplexArray(E[] rePart,
E[] imPart)
複素ベクトルの成分を返します。 |
|
static
|
createNormalRandom(E[][] matrix,
int rowSize,
int columnSize)
平均0、分散1の正規分布の乱数を成分とする行列を生成します。 |
|
static
|
createNormalRandom(E[][] matrix,
int rowSize,
int columnSize,
long seed)
平均0、分散1の正規分布の乱数を成分とする行列を生成します。 |
|
static
|
createUniformRandom(E[][] matrix,
int rowSize,
int columnSize)
0〜1の範囲の一様分布の乱数を成分とする行列を生成します。 |
|
static
|
createUniformRandom(E[][] matrix,
int rowSize,
int columnSize,
long seed)
0〜1の範囲の一様分布の乱数を成分とする行列を生成します。 |
|
static
|
elementWiseFunction(E[][] matrix,
org.mklab.nfc.matrix.NumericalScalarFunction<E> function)
成分毎に関数の計算をし、計算結果を成分とする行列を生成します。 |
|
static NumericalScalar<?>[][] |
elementWiseFunction(NumericalScalar<?>[][] matrix1,
NumericalScalar<?>[][] matrix2,
org.mklab.nfc.matrix.NumericalScalarFunctionWithTwoArguments function)
成分毎に関数の計算をし、計算結果を成分とする行列を生成します。 |
|
static NumericalScalar<?>[][] |
elementWiseFunction(NumericalScalar<?>[][] matrix1,
NumericalScalar<?> value,
org.mklab.nfc.matrix.NumericalScalarFunctionWithTwoArguments function)
成分毎に関数の計算をし、計算結果を成分とする行列を生成します。 |
|
static boolean |
equals(NumericalScalar<?>[][] a1,
NumericalScalar<?>[][] a2,
NumericalScalar<?> tolerance)
2個の配列の成分が全て等しか判定します。 |
|
static
|
frobNorm(E[][] matrixRe,
E[][] matrixIm)
複素行列のフロベニウスノルムを返します。 |
|
static NumericalScalar<?> |
frobNorm(NumericalScalar<?>[][] matrix)
行列のフロベニウスノムルを返します。 |
|
static NumericalScalar<?>[][] |
frobNormColumnWise(NumericalScalar<?>[][] matrix)
列毎のフロベニウスノムルを成分とする行ベクトル返します。 |
|
static NumericalScalar<?>[][] |
frobNormRowWise(NumericalScalar<?>[][] matrix)
行毎のフロベニウスノムルを成分とする列ベクトル返します。 |
|
static int[] |
indexOfMaximum(NumericalScalar<?>[][] matrix)
最大成分の行番号(1から始まります)と列番号(1から始まります)を求めます。 |
|
static int[] |
indexOfMinimum(NumericalScalar<?>[][] matrix)
最小成分の行番号(1から始まります)と列番号(1から始まります)を返します。 |
|
static NumericalScalar<?> |
infNorm(NumericalScalar<?>[][] matrix)
行列の無限大ノルムを返します。 |
|
static
|
isUnit(E[][] matrix,
NumericalScalar<?> tolerance)
単位行列であるか判定します。 |
|
static
|
isZero(E[][] matrix,
NumericalScalar<?> tolerance)
零行列か判定します。 |
|
static
|
max(E[] matrix)
ベクトルの最大成分を返します。 |
|
static
|
max(E[][] matrix)
行列の最大成分を返します。 |
|
static
|
maxColumnWise(E[][] matrix)
列毎に最大値を計算し、計算結果を成分とする列ベクトルを生成します。 |
|
static NumericalScalar<?>[][] |
maxElementWise(NumericalScalar<?>[][] a1,
NumericalScalar<?>[][] a2)
成分毎に大きさを比較し、大きい方を成分とする行列を生成します。 |
|
static
|
maximum(E[][] matrix)
最大成分とその行番号(1から始まります)と列番号(1から始まります)を求めます。 |
|
static
|
maximumColumnWise(E[][] matrix)
列毎の最大成分とその指数を返します。 |
|
static
|
maximumRowWise(E[][] matrix)
行毎の最大成分とその指数を返します。 |
|
static
|
maxRowWise(E[][] matrix)
行毎に最大値を計算し、計算結果を成分とする列ベクトルを生成します。 |
|
static
|
median(E[][] matrix)
全ての成分の中間値(メジアン)を返します。 |
|
static
|
medianColumnWise(E[][] matrix)
列毎のメジアンを成分とする行ベクトルを返します。 |
|
static
|
medianRowWise(E[][] matrix)
行毎のメジアンを成分とする列ベクトルを返します。 |
|
static
|
min(E[] matrix)
ベクトルの最小成分を返します。 |
|
static
|
min(E[][] matrix)
行列の最小成分を返します。 |
|
static
|
minColumnWise(E[][] matrix)
列毎に最小値を計算し、計算結果を成分とする列ベクトルを生成します。 |
|
static NumericalScalar<?>[][] |
minElementWise(NumericalScalar<?>[][] a1,
NumericalScalar<?>[][] a2)
成分毎に大きさを比較し、小さい方を成分とする行列を生成します。 |
|
static
|
minimum(E[][] matrix)
最小成分と行番号(1から始まります)と列番号(1から始まります)を返します。 |
|
static
|
minimumColumnWise(E[][] matrix)
列毎に最小成分とその指数を返します。 |
|
static
|
minimumRowWise(E[][] matrix)
行毎の最小成分とその指数を返します。 |
|
static
|
minRowWise(E[][] matrix)
行毎に最小値を計算し、計算結果を成分とする行ベクトルを生成します。 |
|
static
|
multiply(E[][] aRe,
E[][] aIm,
E[][] bRe,
E[][] bIm)
複素行列と複素行列の積を返します。 |
|
static
|
multiply(E[][] matrixRe,
E[][] matrixIm,
E valueRe,
E valueIm)
行列に複素数を掛けた行列を生成します。 |
|
static
|
multiplySelf(E[][] matrixRe,
E[][] matrixIm,
E scalar)
行列に実数を乗じます。 |
|
static
|
multiplySelf(E[][] matrixRe,
E[][] matrixIm,
E valueRe,
E valueIm)
行列に複素数を乗じます。 |
|
static
|
norm(E[][] matrix,
NormType type)
行列のノルムを返します。 |
|
static NumericalScalar<?>[][] |
powerElementWise(double[][] matrix,
NumericalScalar<?> scalar)
行列の全ての成分毎に累乗を計算し、計算結果を成分とする行列を生成します。 |
|
static
|
powerElementWise(E[][] matrix,
double scalar)
行列の全ての成分毎に累乗を計算し、計算結果を成分とする行列を生成します。 |
|
static
|
powerElementWise(E[][] a1,
double[][] a2)
行列の成分毎に累乗を計算し、計算結果を成分とする行列を生成します。 |
|
static
|
powerElementWise(E scalar,
double[][] matrix)
スカラーの累乗を実行列の成分毎に求めます。 |
|
static NumericalScalar<?>[][] |
powerElementWise(int[][] matrix,
NumericalScalar<?> scalar)
行列の全ての成分毎に累乗を計算し、計算結果を成分とする行列を生成します。 |
|
static NumericalScalar<?>[][] |
powerElementWise(NumericalScalar<?>[][] matrix,
NumericalScalar<?> scalar)
行列の全ての成分毎に累乗を計算し、計算結果を成分とする行列を生成します。 |
|
static NumericalScalar<?>[][] |
powerElementWise(NumericalScalar<?>[][] a1,
NumericalScalar<?>[][] a2)
行列の成分毎に累乗を計算し、計算結果を成分とする行列を生成します。 |
|
static NumericalScalar<?>[][] |
powerElementWise(NumericalScalar<?> scalar,
NumericalScalar<?>[][] matrix)
スカラーの累乗を複素行列の成分毎に求めます。 |
|
static
|
quickSort(E[] vector,
int[] index,
int start,
int end)
ベクトルの成分を昇順にソートした結果を返します。 |
|
static
|
quickSortByImagPart(E[] vector,
int[] index,
int start,
int end)
ベクトルの成分を虚部の昇順にソートした結果を返します。 |
|
static
|
quickSortByRealPart(E[] vector,
int[] index,
int start,
int end)
ベクトルの成分を実部の昇順にソートした結果を返します。 |
|
static
|
roundToZeroElementWise(E[][] matrix,
NumericalScalar<?> tolerance)
絶対値が小さい成分を0に丸めます。 |
|
static
|
signumElementWise(E[][] matrix)
自身の各成分の(x/abs(x)を成分に持つ行列を返します。 |
|
static
|
sortColumnWise(E[][] matrix)
列毎に昇順に並び替えた(絶対値でソートした)行列と元の位置を示す指数を返します。 |
|
static
|
sortColumnWiseWithIndex(E[][] matrix)
列毎に昇順に並び替えた(絶対値でソートした)行列と元の位置を示す指数を返します。 |
|
static
|
sortRowWise(E[][] matrix)
行毎に昇順に並び替えた(絶対値でソートした)行列と元の位置を示す指数を返します。 |
|
static
|
sortRowWiseWithIndex(E[][] matrix)
行毎に昇順に並び替えた(絶対値でソートした)行列と元の位置を示す指数を返します。 |
|
static
|
std(E[][] matrix)
行列の全ての成分の標準偏差を求めます。 |
|
static
|
stdColumnWise(E[][] matrix)
列毎に標準偏差を計算し、計算結果を成分とする列ベクトルを生成します。 |
|
static
|
stdRowWise(E[][] matrix)
行毎に標準偏差を計算し、計算結果を成分とする列ベクトルを生成します。 |
クラス java.lang.Object から継承されたメソッド |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
コンストラクタの詳細 |
---|
public NumericalMatrixUtil()
メソッドの詳細 |
---|
public static <E extends NumericalScalar<E>> E[][] medianColumnWise(E[][] matrix)
E
- 成分の型matrix
- 対象となる行列
public static <E extends NumericalScalar<E>> E[][] medianRowWise(E[][] matrix)
E
- 成分の型matrix
- 対象となる行列
public static <E extends NumericalScalar<E>> E median(E[][] matrix)
E
- 成分の型matrix
- 対象となる行列
public static final <E extends NumericalScalar<E>> org.mklab.nfc.matrix.IndexedElements<E> sortRowWiseWithIndex(E[][] matrix)
E
- 成分の型matrix
- 対象となる行列
public static final <E extends NumericalScalar<E>> E[][] sortRowWise(E[][] matrix)
E
- 成分の型matrix
- 対象となる行列
public static final <E extends NumericalScalar<E>> org.mklab.nfc.matrix.IndexedElements<E> sortColumnWiseWithIndex(E[][] matrix)
E
- 成分の型matrix
- 対象となる行列
public static final <E extends NumericalScalar<E>> E[][] sortColumnWise(E[][] matrix)
E
- 成分の型matrix
- 対象となる行列
public static final <E extends NumericalScalar<E>> E[][] stdRowWise(E[][] matrix)
E
- 成分の型matrix
- 対象となる行列
public static final <E extends NumericalScalar<E>> E[][] stdColumnWise(E[][] matrix)
E
- 成分の型matrix
- 対象となる行列
public static final <E extends NumericalScalar<E>> E std(E[][] matrix)
E
- 成分の型matrix
- 対象となる行列
public static NumericalScalar<?>[][] absElementWise(NumericalScalar<?>[][] matrix)
matrix
- 元の行列
public static NumericalScalar<?>[][] argumentElementWise(NumericalScalar<?>[][] matrix)
matrix
- 対象となる行列
public static final NumericalScalar<?> frobNorm(NumericalScalar<?>[][] matrix)
matrix
- 対象となる行列
public static final NumericalScalar<?>[][] frobNormRowWise(NumericalScalar<?>[][] matrix)
matrix
- 対象となる行列
public static final NumericalScalar<?>[][] frobNormColumnWise(NumericalScalar<?>[][] matrix)
matrix
- 対象となる行列
public static final <E extends NumericalScalar<E>> E frobNorm(E[][] matrixRe, E[][] matrixIm)
E
- 成分の型matrixRe
- 実部行列matrixIm
- 虚部行列
public static final NumericalScalar<?> infNorm(NumericalScalar<?>[][] matrix)
matrix
- 対象となる行列
public static final <E extends NumericalScalar<E>> E max(E[][] matrix)
E
- 成分の型matrix
- 対象となる行列
public static final <E extends NumericalScalar<E>> E max(E[] matrix)
E
- 成分の型matrix
- 対象となる行列
public static final <E extends NumericalScalar<E>> E min(E[][] matrix)
E
- 成分の型matrix
- 対象となる行列
public static final <E extends NumericalScalar<E>> E min(E[] matrix)
E
- 成分の型matrix
- 対象となる行列
public static final NumericalScalar<?>[][] maxElementWise(NumericalScalar<?>[][] a1, NumericalScalar<?>[][] a2)
a1
- 第一行列a2
- 第二行列
public static final NumericalScalar<?>[][] minElementWise(NumericalScalar<?>[][] a1, NumericalScalar<?>[][] a2)
a1
- 第一行列a2
- 第二行列
public static final <E extends NumericalScalar<E>> E[][] powerElementWise(E[][] matrix, double scalar)
E
- 成分の型matrix
- 累乗の対象となる値を成分とする行列scalar
- 累乗の指数
public static final NumericalScalar<?>[][] powerElementWise(NumericalScalar<?>[][] matrix, NumericalScalar<?> scalar)
matrix
- 累乗の対象となる値を成分とする行列scalar
- 累乗の指数
public static final NumericalScalar<?>[][] powerElementWise(int[][] matrix, NumericalScalar<?> scalar)
matrix
- 累乗の対象となる値を成分とする行列scalar
- 累乗の指数
public static final NumericalScalar<?>[][] powerElementWise(double[][] matrix, NumericalScalar<?> scalar)
matrix
- 累乗の対象となる値を成分とする行列scalar
- 累乗の指数
public static final <E extends NumericalScalar<E>> E[][] powerElementWise(E[][] a1, double[][] a2)
E
- 成分の型a1
- 累乗の対象となる値を成分とする行列a2
- 累乗の指数(実数)を成分とする行列
public static final NumericalScalar<?>[][] powerElementWise(NumericalScalar<?>[][] a1, NumericalScalar<?>[][] a2)
a1
- 累乗の対象となる値を成分とする行列a2
- 累乗の指数を成分とする行列
public static final <E extends NumericalScalar<E>> E[][] maxRowWise(E[][] matrix)
E
- 成分の型matrix
- 対象となる行列
public static final <E extends NumericalScalar<E>> E[][] maxColumnWise(E[][] matrix)
E
- 成分の型matrix
- 対象となる行列
public static final <E extends NumericalScalar<E>> E[][] minRowWise(E[][] matrix)
E
- 成分の型matrix
- 対象となる行列
public static final <E extends NumericalScalar<E>> E[][] minColumnWise(E[][] matrix)
E
- 成分の型matrix
- 対象となる行列
public static final <E extends NumericalScalar<E>> Object[] maximum(E[][] matrix)
E
- 成分の型matrix
- 対象となる行列
public static final int[] indexOfMaximum(NumericalScalar<?>[][] matrix)
matrix
- 対象となる行列
public static final <E extends NumericalScalar<E>> Object[] maximumRowWise(E[][] matrix)
E
- 成分の型matrix
- 対象となる行列
public static final <E extends NumericalScalar<E>> Object[] maximumColumnWise(E[][] matrix)
E
- 成分の型matrix
- 対象となる行列
public static final <E extends NumericalScalar<E>> Object[] minimum(E[][] matrix)
E
- 成分の型matrix
- 対象となる行列
public static final int[] indexOfMinimum(NumericalScalar<?>[][] matrix)
matrix
- 対象となる行列
public static final <E extends NumericalScalar<E>> Object[] minimumRowWise(E[][] matrix)
E
- 成分の型matrix
- 対象となる行列
public static final <E extends NumericalScalar<E>> Object[] minimumColumnWise(E[][] matrix)
E
- 成分の型matrix
- 対象となる行列
public static <E extends NumericalScalar<E>> E[][] signumElementWise(E[][] matrix)
E
- 成分の型matrix
- 対象となる行列
public static final <E extends NumericalScalar<E>> E[][] powerElementWise(E scalar, double[][] matrix)
E
- 成分の型scalar
- 累乗の対象となるスカラーmatrix
- 実行列(累乗の指数を成分とする)
public static final NumericalScalar<?>[][] powerElementWise(NumericalScalar<?> scalar, NumericalScalar<?>[][] matrix)
scalar
- 累乗の対象となるスカラーmatrix
- 累乗の指数を成分とする行列
public static final <E extends NumericalScalar<E>> void quickSort(E[] vector, int[] index, int start, int end)
E
- 成分の型vector
- 対象となるベクトルindex
- 並び替えた成分の番号を記憶する配列start
- ソートの対象となる成分の開始番号end
- ソートの対象となる成分の終了番号public static final <E extends ComplexScalar<?>> void quickSortByImagPart(E[] vector, int[] index, int start, int end)
E
- 成分の型vector
- 対象となるベクトルindex
- 並び替えた成分の番号を記憶する配列start
- ソートの対象となる成分の開始番号end
- ソートの対象となる成分の終了番号public static final <E extends ComplexScalar<?>> void quickSortByRealPart(E[] vector, int[] index, int start, int end)
E
- 成分の型vector
- 対象となるベクトルindex
- 並び替えた成分の番号を記憶する配列start
- ソートの対象となる成分の開始番号end
- ソートの対象となる成分の終了番号public static final <E extends NumericalScalar<E>> E[][] atan2ElementWise(E[][] a1, double[][] a2)
E
- 成分の型a1
- 分子側の値を成分とする行列a2
- 分母側の値を成分とする行列
public static final NumericalScalar<?>[][] atan2ElementWise(NumericalScalar<?>[][] a1, NumericalScalar<?>[][] a2)
a1
- 分子側の値を成分とする行列a2
- 分母側の値を成分とする行列
public static final <E extends NumericalScalar<E>> E[][] elementWiseFunction(E[][] matrix, org.mklab.nfc.matrix.NumericalScalarFunction<E> function)
E
- 成分の型matrix
- 対象となる行列function
- 複素数関数(引数1個)
public static final NumericalScalar<?>[][] elementWiseFunction(NumericalScalar<?>[][] matrix1, NumericalScalar<?>[][] matrix2, org.mklab.nfc.matrix.NumericalScalarFunctionWithTwoArguments function)
matrix1
- 対象となる行列matrix2
- 対象となる行列function
- 関数(引数2個)
public static final NumericalScalar<?>[][] elementWiseFunction(NumericalScalar<?>[][] matrix1, NumericalScalar<?> value, org.mklab.nfc.matrix.NumericalScalarFunctionWithTwoArguments function)
matrix1
- 対象となる行列value
- 対象となる値function
- 関数(引数2個)
public static final <E extends NumericalScalar<E>> NumericalScalar<?> norm(E[][] matrix, NormType type)
E
- 成分の型matrix
- 対象となる行列type
- ノルムの種類(NormType.ONE:1ノルム、NormType.TWO:2ノルム(最大特異値))
public static final <E extends NumericalScalar<E>> ComplexScalar<E>[][] createComplexArray(E[][] rePart, E[][] imPart)
E
- 成分の型rePart
- 実部imPart
- 虚部
public static final <E extends NumericalScalar<E>> ComplexScalar<E>[] createComplexArray(E[] rePart, E[] imPart)
E
- 成分の型rePart
- 実部imPart
- 虚部
public static final boolean equals(NumericalScalar<?>[][] a1, NumericalScalar<?>[][] a2, NumericalScalar<?> tolerance)
a1
- 第一行列a2
- 第二行列tolerance
- 許容誤差
public static final <E extends Scalar<E>> E[][] roundToZeroElementWise(E[][] matrix, NumericalScalar<?> tolerance)
E
- 成分の型matrix
- 対象となる行列tolerance
- 許容誤差
public static final <E extends NumericalScalar<E>> boolean isZero(E[][] matrix, NumericalScalar<?> tolerance)
E
- 成分の型matrix
- 調べる行列tolerance
- 許容誤差
public static final <E extends NumericalScalar<E>> boolean isUnit(E[][] matrix, NumericalScalar<?> tolerance)
E
- 成分の型matrix
- 調べる行列tolerance
- 許容誤差
public static final <E extends NumericalScalar<E>> E[][] createUniformRandom(E[][] matrix, int rowSize, int columnSize)
E
- 成分の型matrix
- 対象となる行列rowSize
- 行の数columnSize
- 列の数
public static final <E extends NumericalScalar<E>> E[][] createUniformRandom(E[][] matrix, int rowSize, int columnSize, long seed)
E
- 成分の型matrix
- 対象となる行列rowSize
- 行の数columnSize
- 列の数seed
- 乱数の種
public static final <E extends NumericalScalar<E>> E[][] createNormalRandom(E[][] matrix, int rowSize, int columnSize)
E
- 成分の型matrix
- 対象となる行列rowSize
- 行の数columnSize
- 列の数
public static final <E extends NumericalScalar<E>> E[][] createNormalRandom(E[][] matrix, int rowSize, int columnSize, long seed)
E
- 成分の型matrix
- 対象となる行列rowSize
- 行の数columnSize
- 列の数seed
- 乱数の種
public static final <E extends NumericalScalar<E>> void multiplySelf(E[][] matrixRe, E[][] matrixIm, E valueRe, E valueIm)
E
- 成分の型matrixRe
- 対象となる行列の実部matrixIm
- 対象となる行列の虚部valueRe
- 複素数の実部valueIm
- 複素数の虚部public static final <E extends NumericalScalar<E>> E[][][] multiply(E[][] matrixRe, E[][] matrixIm, E valueRe, E valueIm)
E
- 成分の型matrixRe
- 対象となる行列の実部matrixIm
- 対象となる行列の虚部valueRe
- 複素数の虚部valueIm
- 複素数の実部
public static final <E extends NumericalScalar<E>> E[][][] multiply(E[][] aRe, E[][] aIm, E[][] bRe, E[][] bIm)
E
- 成分の型aRe
- 第一行列の実部aIm
- 第一行列の虚部bRe
- 第二行列の実部bIm
- 第二行列の虚部
public static final <E extends NumericalScalar<E>> void multiplySelf(E[][] matrixRe, E[][] matrixIm, E scalar)
E
- 成分の型matrixRe
- 対象となる行列の実部matrixIm
- 対象となる行列の虚部scalar
- 実数
|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |