接口 RealMatrix
- 所有超级接口:
-
AnyMatrix,Blendable<RealMatrix>
- 所有已知子接口:
-
SparseRealMatrix
- 所有已知实现类:
-
AbstractRealMatrix,Array2DRowRealMatrix,BlockRealMatrix,DiagonalMatrix,OpenMapRealMatrix
定义具有基本代数运算的实值矩阵的接口。
矩阵元素索引从0开始 -- 例如,getEntry(0, 0)返回矩阵中第一行第一列的元素。
-
方法概要
修饰符和类型方法说明add(RealMatrix m) 返回this和m的和。voidaddToEntry(int row, int column, double increment) 将指定值添加到this矩阵的指定条目(就地)。default RealMatrixblendArithmeticallyWith(RealMatrix other, double blendingValue) 与另一个实例进行算术混合。copy()返回此的(深层)副本。voidcopySubMatrix(int[] selectedRows, int[] selectedColumns, double[][] destination) 复制子矩阵。voidcopySubMatrix(int startRow, int endRow, int startColumn, int endColumn, double[][] destination) 复制子矩阵。createMatrix(int rowDimension, int columnDimension) 使用提供的行和列维度创建与实例相同类型的新RealMatrix。double[]getColumn(int column) 作为数组返回给定列索引处的条目。getColumnMatrix(int column) 作为列矩阵返回给定列索引处的条目。getColumnVector(int column) 作为向量返回给定列索引处的条目。double[][]getData()将矩阵条目作为二维数组返回。doublegetEntry(int row, int column) 获取指定行和列中的条目。double返回矩阵的Frobenius范数。default doublegetNorm1()返回矩阵的最大绝对列和范数(L1)。default double返回矩阵的最大绝对行和范数(L∞)。double[]getRow(int row) 获取给定行索引处的条目。getRowMatrix(int row) 作为行矩阵返回给定行索引处的条目。getRowVector(int row) 作为向量返回给定行索引处的条目。getSubMatrix(int[] selectedRows, int[] selectedColumns) 获取子矩阵。getSubMatrix(int startRow, int endRow, int startColumn, int endColumn) 获取子矩阵。doublegetTrace()返回矩阵的迹(主对角线上元素的总和)。default RealMatrixmap(UnivariateFunction function) 作为实现如下:default RealMatrixmapToSelf(UnivariateFunction function) 将每个条目替换为应用函数的结果。返回this与m的后乘积。voidmultiplyEntry(int row, int column, double factor) 将this矩阵的指定条目(就地)乘以指定值。default RealMatrix返回this与m^T的后乘积的结果。double[]operate(double[] v) 返回矩阵与向量v的乘积的结果。返回矩阵与向量v的乘积的结果。power(int p) 返回this与自身p次的乘积的结果。double[]preMultiply(double[] v) 返回通过向量v的前乘积的(行)向量结果。返回this与m的前乘积的结果。返回通过向量v的前乘积的(行)向量结果。scalarAdd(double d) 返回将this的每个条目添加d的结果。scalarMultiply(double d) 返回将this的每个条目乘以d的结果。voidsetColumn(int column, double[] array) 将this矩阵的指定column设置为指定array的条目。voidsetColumnMatrix(int column, RealMatrix matrix) 将this矩阵的指定column设置为指定列matrix的条目。voidsetColumnVector(int column, RealVector vector) 将this矩阵的指定column设置为指定vector的条目。voidsetEntry(int row, int column, double value) 设置指定行和列中的条目。voidsetRow(int row, double[] array) 将this矩阵的指定row设置为指定array的条目。voidsetRowMatrix(int row, RealMatrix matrix) 将this矩阵的指定row设置为指定行matrix的条目。voidsetRowVector(int row, RealVector vector) 将this矩阵的指定row设置为指定vector的条目。voidsetSubMatrix(double[][] subMatrix, int row, int column) 使用输入subMatrix数组中的数据替换从row, column开始的子矩阵。返回this减去m的结果。返回此矩阵的转置。default RealMatrix返回this^T与m的后乘积的结果。double按列顺序访问(并可能更改)所有矩阵条目。doublewalkInColumnOrder(RealMatrixChangingVisitor visitor, int startRow, int endRow, int startColumn, int endColumn) 按列顺序访问(并可能更改)一些矩阵条目。double按列顺序访问(但不更改)所有矩阵条目。doublewalkInColumnOrder(RealMatrixPreservingVisitor visitor, int startRow, int endRow, int startColumn, int endColumn) 按列顺序访问(但不更改)一些矩阵条目。double使用最快可能的顺序访问(并可能更改)所有矩阵条目。doublewalkInOptimizedOrder(RealMatrixChangingVisitor visitor, int startRow, int endRow, int startColumn, int endColumn) 使用最快可能的顺序访问(并可能更改)一些矩阵条目。double使用最快可能的顺序访问(但不更改)所有矩阵条目。doublewalkInOptimizedOrder(RealMatrixPreservingVisitor visitor, int startRow, int endRow, int startColumn, int endColumn) 使用最快可能的顺序访问(但不更改)一些矩阵条目。doublewalkInRowOrder(RealMatrixChangingVisitor visitor) 按行顺序访问(并可能更改)所有矩阵条目。doublewalkInRowOrder(RealMatrixChangingVisitor visitor, int startRow, int endRow, int startColumn, int endColumn) 按行顺序访问(并可能更改)一些矩阵条目。double按行顺序访问(但不更改)所有矩阵条目。doublewalkInRowOrder(RealMatrixPreservingVisitor visitor, int startRow, int endRow, int startColumn, int endColumn) 按行顺序访问(但不更改)一些矩阵条目。从接口继承的方法 org.hipparchus.linear.AnyMatrix
getColumnDimension, getRowDimension, isSquare
-
方法详细资料
-
createMatrix
使用提供的行和列维度创建与实例相同类型的新RealMatrix。- 参数:
-
rowDimension- 新矩阵中的行数 -
columnDimension- 新矩阵中的列数 - 返回:
- 与实例相同类型的新矩阵
- 抛出:
-
MathIllegalArgumentException- 如果行或列维度不是正数。
-
copy
RealMatrix copy()返回此的(深层)副本。- 返回:
- 矩阵副本
-
add
返回this和m的和。- 参数:
-
m- 要相加的矩阵 - 返回:
-
this + m - 抛出:
-
MathIllegalArgumentException- 如果m与this的大小不同。
-
subtract
返回this减去m的结果。- 参数:
-
m- 要减去的矩阵 - 返回:
-
this - m - 抛出:
-
MathIllegalArgumentException- 如果m与this的大小不同。
-
scalarAdd
返回将d添加到this的每个条目的结果。- 参数:
-
d- 要添加到每个条目的值 - 返回:
-
d + this
-
scalarMultiply
返回将this的每个条目乘以d的结果。- 参数:
-
d- 将所有条目乘以的值 - 返回:
-
d * this
-
multiply
返回this与m的后乘积的结果。- 参数:
-
m- 要后乘的矩阵 - 返回:
-
this * m - 抛出:
-
MathIllegalArgumentException- 如果columnDimension(this) != rowDimension(m)
-
multiplyTransposed
- 参数:
-
m- 要首先转置然后后乘的矩阵 - 返回:
-
this * m^T - 抛出:
-
MathIllegalArgumentException- 如果columnDimension(this) != columnDimension(m) - 从以下版本开始:
- 1.3
-
transposeMultiply
- 参数:
-
m- 要后乘的矩阵 - 返回:
-
this^T * m - 抛出:
-
MathIllegalArgumentException- 如果columnDimension(this) != columnDimension(m) - 从以下版本开始:
- 1.3
-
preMultiply
返回前乘this与m的结果。- 参数:
-
m- 要前乘的矩阵 - 返回:
-
m * this - 抛出:
-
MathIllegalArgumentException- 如果rowDimension(this) != columnDimension(m)
-
power
返回将this与自身乘以p次的结果。根据底层存储,高次幂可能导致不稳定性。- 参数:
-
p- 将this提升到幂p - 返回:
-
this^p - 抛出:
-
MathIllegalArgumentException- 如果p < 0 -
MathIllegalArgumentException- 如果矩阵不是方阵
-
blendArithmeticallyWith
以算术方式混合此实例与另一个实例。- 指定者:
-
blendArithmeticallyWith在接口中Blendable<RealMatrix> - 参数:
-
other- 要进行算术混合的另一个实例 -
blendingValue- 来自smoothstep函数B(x)的值。预期在[0:1]之间,否则将抛出异常。 - 返回:
- this * (1 - B(x)) + other * B(x)
-
getData
double[][] getData()返回矩阵条目作为二维数组。- 返回:
- 条目的二维数组
-
getNorm1
default double getNorm1()返回矩阵的最大绝对列和范数(L1)。- 返回:
- 范数
-
getNormInfty
default double getNormInfty()返回矩阵的最大绝对行和范数(L∞)。- 返回:
- 范数
-
getFrobeniusNorm
double getFrobeniusNorm()返回矩阵的Frobenius范数。- 返回:
- 范数
-
getSubMatrix
RealMatrix getSubMatrix(int startRow, int endRow, int startColumn, int endColumn) throws MathIllegalArgumentException 获取子矩阵。行和列从0到n-1表示。- 参数:
-
startRow- 初始行索引 -
endRow- 最终行索引(包括) -
startColumn- 初始列索引 -
endColumn- 最终列索引(包括) - 返回:
- 包含指定行和列数据的子矩阵。
- 抛出:
-
MathIllegalArgumentException- 如果索引无效。 -
MathIllegalArgumentException- 如果endRow < startRow或endColumn < startColumn。
-
getSubMatrix
RealMatrix getSubMatrix(int[] selectedRows, int[] selectedColumns) throws MathIllegalArgumentException, NullArgumentException 获取子矩阵。行和列从0到n-1表示。- 参数:
-
selectedRows- 行索引数组。 -
selectedColumns- 列索引数组。 - 返回:
- 包含指定行和列数据的子矩阵
- 抛出:
-
NullArgumentException- 如果行或列选择为null -
MathIllegalArgumentException- 如果行或列选择为空(长度为零)。 -
MathIllegalArgumentException- 如果索引无效。
-
copySubMatrix
void copySubMatrix(int startRow, int endRow, int startColumn, int endColumn, double[][] destination) throws MathIllegalArgumentException 复制子矩阵。行和列从0到n-1表示。- 参数:
-
startRow- 初始行索引 -
endRow- 最终行索引(包括) -
startColumn- 初始列索引 -
endColumn- 最终列索引(包括) -
destination- 应将子矩阵数据复制到的数组(如果大于行/列计数,则仅使用左上部分) - 抛出:
-
MathIllegalArgumentException- 如果索引无效。 -
MathIllegalArgumentException- 如果endRow < startRow或endColumn < startColumn。 -
MathIllegalArgumentException- 如果目标数组太小。
-
copySubMatrix
void copySubMatrix(int[] selectedRows, int[] selectedColumns, double[][] destination) throws MathIllegalArgumentException, NullArgumentException 复制子矩阵。行和列从0到n-1表示。- 参数:
-
selectedRows- 行索引数组。 -
selectedColumns- 列索引数组。 -
destination- 应将子矩阵数据复制到的数组(如果大于行/列计数,则仅使用左上部分) - 抛出:
-
NullArgumentException- 如果行或列选择为null -
MathIllegalArgumentException- 如果行或列选择为空(长度为零)。 -
MathIllegalArgumentException- 如果索引无效。 -
MathIllegalArgumentException- 如果目标数组太小。
-
setSubMatrix
void setSubMatrix(double[][] subMatrix, int row, int column) throws MathIllegalArgumentException, NullArgumentException 用输入subMatrix数组中的数据替换从row, column开始的子矩阵。索引从0开始。示例:
从以下开始1 2 3 4 5 6 7 8 9 0 1 2
和
subMatrix = {{3, 4} {5,6}},调用setSubMatrix(subMatrix,1,1))将导致1 2 3 4 5 3 4 8 9 5 6 2
- 参数:
-
subMatrix- 包含子矩阵替换数据的数组 -
row- 要替换其条目的左上元素的行坐标 -
column- 要替换其条目的左上元素的列坐标 - 抛出:
-
MathIllegalArgumentException- 如果subMatrix为空。 -
MathIllegalArgumentException- 如果subMatrix不适合从元素(row, column)开始的此矩阵。 -
MathIllegalArgumentException- 如果subMatrix不是矩形的(不是所有行长度相同)或为空。 -
NullArgumentException- 如果subMatrix为null。
-
getRowMatrix
获取给定行索引处的条目作为行矩阵。行索引从0开始。- 参数:
-
row- 要获取的行。 - 返回:
- 行矩阵。
- 抛出:
-
MathIllegalArgumentException- 如果指定的行索引无效。
-
setRowMatrix
将this矩阵的指定row设置为指定行matrix的条目。行索引从0开始。- 参数:
-
row- 要设置的行。 -
matrix- 要复制的行矩阵(必须有一行,且列数与实例相同)。 - 抛出:
-
MathIllegalArgumentException- 如果指定的行索引无效。 -
MathIllegalArgumentException- 如果matrix的行维数不是1,或者this和matrix的列维数不匹配。
-
getColumnMatrix
获取给定列索引处的条目作为列矩阵。列索引从0开始。- 参数:
-
column- 要获取的列。 - 返回:
- 列矩阵。
- 抛出:
-
MathIllegalArgumentException- 如果指定的列索引无效。
-
setColumnMatrix
将this矩阵的指定column设置为指定列matrix的条目。列索引从0开始。- 参数:
-
column- 要设置的列。 -
matrix- 要复制的列矩阵(必须有一列,且行数与实例相同)。 - 抛出:
-
MathIllegalArgumentException- 如果指定的列索引无效。 -
MathIllegalArgumentException- 如果matrix的列维数不是1,或者this和matrix的行维数不匹配。
-
getRowVector
将第row行的条目作为向量返回。行索引从0开始。- 参数:
-
row- 要获取的行。 - 返回:
- 一行向量。
- 抛出:
-
MathIllegalArgumentException- 如果指定的行索引无效。
-
setRowVector
将this矩阵的指定row设置为指定vector的条目。行索引从0开始。- 参数:
-
row- 要设置的行。 -
vector- 要复制的行向量(必须与实例的列数相同)。 - 抛出:
-
MathIllegalArgumentException- 如果指定的行索引无效。 -
MathIllegalArgumentException- 如果vector的维数与this矩阵的列维数不匹配。
-
getColumnVector
获取给定列索引处的条目作为向量。列索引从0开始。- 参数:
-
column- 要获取的列。 - 返回:
- 一列向量。
- 抛出:
-
MathIllegalArgumentException- 如果指定的列索引无效
-
setColumnVector
将this矩阵的指定column设置为指定vector的条目。列索引从0开始。- 参数:
-
column- 要设置的列。 -
vector- 要复制的列向量(必须与实例的行数相同)。 - 抛出:
-
MathIllegalArgumentException- 如果指定的列索引无效。 -
MathIllegalArgumentException- 如果vector的维数与this矩阵的行维数不匹配。
-
getRow
获取给定行索引处的条目。行索引从0开始。- 参数:
-
row- 要获取的行。 - 返回:
- 行中的条目数组。
- 抛出:
-
MathIllegalArgumentException- 如果指定的行索引无效。
-
setRow
将this矩阵的指定row设置为指定array的条目。行索引从0开始。- 参数:
-
row- 要设置的行。 -
array- 要复制的行矩阵(必须与实例的列数相同) - 抛出:
-
MathIllegalArgumentException- 如果指定的行索引无效。 -
MathIllegalArgumentException- 如果array的长度与this矩阵的列维数不匹配。
-
getColumn
获取给定列索引处的条目作为数组。列索引从0开始。- 参数:
-
column- 要获取的列。 - 返回:
- 列中的条目数组。
- 抛出:
-
MathIllegalArgumentException- 如果指定的列索引无效。
-
setColumn
将this矩阵的指定column设置为指定array的条目。列索引从0开始。- 参数:
-
column- 要设置的列。 -
array- 要复制的列数组(必须与实例的行数相同)。 - 抛出:
-
MathIllegalArgumentException- 如果指定的列索引无效。 -
MathIllegalArgumentException- 如果array的长度与this矩阵的行维数不匹配。
-
getEntry
获取指定行和列的条目。行和列索引从0开始。- 参数:
-
row- 要获取的条目的行索引。 -
column- 要获取的条目的列索引。 - 返回:
-
(row, column)处的矩阵条目。 - 抛出:
-
MathIllegalArgumentException- 如果行或列索引无效。
-
setEntry
设置指定行和列的条目。行和列索引从0开始。- 参数:
-
row- 要设置的条目的行索引。 -
column- 要设置的条目的列索引。 -
value- 条目的新值。 - 抛出:
-
MathIllegalArgumentException- 如果行或列索引无效
-
addToEntry
将指定值添加到this矩阵的指定条目(就地)。行和列索引从0开始。- 参数:
-
row- 要修改的条目的行索引。 -
column- 要修改的条目的列索引。 -
increment- 要添加到矩阵条目的值。 - 抛出:
-
MathIllegalArgumentException- 如果行或列索引无效。
-
multiplyEntry
将this矩阵的指定条目乘以指定值(就地)。行和列索引从0开始。- 参数:
-
row- 要修改的条目的行索引。 -
column- 要修改的条目的列索引。 -
factor- 矩阵条目的乘法因子。 - 抛出:
-
MathIllegalArgumentException- 如果行或列索引无效。
-
transpose
RealMatrix transpose()返回此矩阵的转置。- 返回:
- 转置矩阵
-
getTrace
返回矩阵的迹(主对角线上元素的和)。- 返回:
- 迹。
- 抛出:
-
MathIllegalArgumentException- 如果矩阵不是方阵。
-
operate
返回将此矩阵乘以向量v的结果。- 参数:
-
v- 要操作的向量 - 返回:
-
this * v - 抛出:
-
MathIllegalArgumentException- 如果v的长度与this的列维数不匹配。
-
operate
返回将此矩阵乘以向量v的结果。- 参数:
-
v- 要操作的向量 - 返回:
-
this * v - 抛出:
-
MathIllegalArgumentException- 如果v的维数与this的列维数不匹配。
-
preMultiply
返回通过将此矩阵左乘向量v的(行)向量结果。- 参数:
-
v- 要与之前乘的行向量 - 返回:
-
v * this - 抛出:
-
MathIllegalArgumentException- 如果v的长度与this的行维度不匹配。
-
preMultiply
返回通过将此矩阵与向量v相乘得到的(行)向量结果。- 参数:
-
v- 要与之前乘的行向量 - 返回:
-
v * this - 抛出:
-
MathIllegalArgumentException- 如果v的维度与this的行维度不匹配。
-
walkInRowOrder
以行顺序访问(可能更改)所有矩阵条目。行顺序从左上角开始,按行从左到右迭代所有元素,然后转到下一行的最左边元素。
- 参数:
-
visitor- 用于处理所有矩阵条目的访问者 - 返回:
-
在遍历结束时由
RealMatrixChangingVisitor.end()返回的值 - 另请参阅:
-
walkInRowOrder
以行顺序访问(但不更改)所有矩阵条目。行顺序从左上角开始,按行从左到右迭代所有元素,然后转到下一行的最左边元素。
- 参数:
-
visitor- 用于处理所有矩阵条目的访问者 - 返回:
-
在遍历结束时由
RealMatrixPreservingVisitor.end()返回的值 - 另请参阅:
-
walkInRowOrder
double walkInRowOrder(RealMatrixChangingVisitor visitor, int startRow, int endRow, int startColumn, int endColumn) throws MathIllegalArgumentException 以行顺序访问(可能更改)一些矩阵条目。行顺序从左上角开始,按行从左到右迭代所有元素,然后转到下一行的最左边元素。
- 参数:
-
visitor- 用于处理所有矩阵条目的访问者 -
startRow- 初始行索引 -
endRow- 最终行索引(包括在内) -
startColumn- 初始列索引 -
endColumn- 最终列索引 - 返回:
-
在遍历结束时由
RealMatrixChangingVisitor.end()返回的值 - 抛出:
-
MathIllegalArgumentException- 如果索引无效。 -
MathIllegalArgumentException- 如果endRow < startRow或endColumn < startColumn。 - 另请参阅:
-
walkInRowOrder
double walkInRowOrder(RealMatrixPreservingVisitor visitor, int startRow, int endRow, int startColumn, int endColumn) throws MathIllegalArgumentException 以行顺序访问(但不更改)一些矩阵条目。行顺序从左上角开始,按行从左到右迭代所有元素,然后转到下一行的最左边元素。
- 参数:
-
visitor- 用于处理所有矩阵条目的访问者 -
startRow- 初始行索引 -
endRow- 最终行索引(包括) -
startColumn- 初始列索引 -
endColumn- 最终列索引 - 返回:
-
在遍历结束时由
RealMatrixPreservingVisitor.end()返回的值 - 抛出:
-
MathIllegalArgumentException- 如果索引无效。 -
MathIllegalArgumentException- 如果endRow < startRow或endColumn < startColumn。 - 另请参阅:
-
walkInColumnOrder
以列顺序访问(并可能更改)所有矩阵条目。列顺序从左上角开始,通过从上到下迭代列的所有元素,然后转到下一列的最顶部元素。
- 参数:
-
visitor- 用于处理所有矩阵条目的访问者 - 返回:
-
在遍历结束时由
RealMatrixChangingVisitor.end()返回的值 - 另请参阅:
-
walkInColumnOrder
以列顺序访问(但不更改)所有矩阵条目。列顺序从左上角开始,通过从上到下迭代列的所有元素,然后转到下一列的最顶部元素。
- 参数:
-
visitor- 用于处理所有矩阵条目的访问者 - 返回:
-
在遍历结束时由
RealMatrixPreservingVisitor.end()返回的值 - 另请参阅:
-
walkInColumnOrder
double walkInColumnOrder(RealMatrixChangingVisitor visitor, int startRow, int endRow, int startColumn, int endColumn) throws MathIllegalArgumentException 以列顺序访问(并可能更改)一些矩阵条目。列顺序从左上角开始,通过从上到下迭代列的所有元素,然后转到下一列的最顶部元素。
- 参数:
-
visitor- 用于处理所有矩阵条目的访问者 -
startRow- 初始行索引 -
endRow- 最终行索引(包括) -
startColumn- 初始列索引 -
endColumn- 最终列索引 - 返回:
-
在遍历结束时由
RealMatrixChangingVisitor.end()返回的值 - 抛出:
-
MathIllegalArgumentException- 如果索引无效。 -
MathIllegalArgumentException- 如果endRow < startRow或endColumn < startColumn。 - 另请参阅:
-
walkInColumnOrder
double walkInColumnOrder(RealMatrixPreservingVisitor visitor, int startRow, int endRow, int startColumn, int endColumn) throws MathIllegalArgumentException 以列顺序访问(但不更改)一些矩阵条目。列顺序从左上角开始,通过从上到下迭代列的所有元素,然后转到下一列的最顶部元素。
- 参数:
-
visitor- 用于处理所有矩阵条目的访问者 -
startRow- 初始行索引 -
endRow- 最终行索引(包括) -
startColumn- 初始列索引 -
endColumn- 最终列索引 - 返回:
- RealMatrixPreservingVisitor.end()在遍历结束时返回的值
- 抛出:
-
MathIllegalArgumentException- 如果索引无效。 -
MathIllegalArgumentException- 如果endRow < startRow或endColumn < startColumn。 - 另请参阅:
-
walkInOptimizedOrder
使用最快的顺序访问(可能更改)所有矩阵条目。最快的遍历顺序取决于确切的矩阵类。它可能不同于传统的行或列顺序。
- 参数:
-
visitor- 用于处理所有矩阵条目的访问者 - 返回:
- RealMatrixChangingVisitor.end()在遍历结束时返回的值
- 另请参阅:
-
walkInOptimizedOrder
使用最快的顺序访问(但不更改)所有矩阵条目。最快的遍历顺序取决于确切的矩阵类。它可能不同于传统的行或列顺序。
- 参数:
-
visitor- 用于处理所有矩阵条目的访问者 - 返回:
- RealMatrixPreservingVisitor.end()在遍历结束时返回的值
- 另请参阅:
-
walkInOptimizedOrder
double walkInOptimizedOrder(RealMatrixChangingVisitor visitor, int startRow, int endRow, int startColumn, int endColumn) throws MathIllegalArgumentException 使用最快的顺序访问(可能更改)一些矩阵条目。最快的遍历顺序取决于确切的矩阵类。它可能不同于传统的行或列顺序。
- 参数:
-
visitor- 用于处理所有矩阵条目的访问者 -
startRow- 初始行索引 -
endRow- 最终行索引(包括) -
startColumn- 初始列索引 -
endColumn- 最终列索引 - 返回:
- RealMatrixChangingVisitor.end()在遍历结束时返回的值
- 抛出:
-
MathIllegalArgumentException- 如果索引无效。 -
MathIllegalArgumentException- 如果endRow < startRow或endColumn < startColumn。 - 另请参阅:
-
walkInOptimizedOrder
double walkInOptimizedOrder(RealMatrixPreservingVisitor visitor, int startRow, int endRow, int startColumn, int endColumn) throws MathIllegalArgumentException 使用最快的顺序访问(但不更改)一些矩阵条目。最快的遍历顺序取决于确切的矩阵类。它可能不同于传统的行或列顺序。
- 参数:
-
visitor- 用于处理所有矩阵条目的访问者 -
startRow- 初始行索引 -
endRow- 最终行索引(包括) -
startColumn- 初始列索引 -
endColumn- 最终列索引(包括) - 返回:
- RealMatrixPreservingVisitor.end()在遍历结束时返回的值
- 抛出:
-
MathIllegalArgumentException- 如果索引无效。 -
MathIllegalArgumentException- 如果endRow < startRow或endColumn < startColumn。 - 另请参阅:
-
map
作为以下实现:return copy().mapToSelf(function);
返回一个新矩阵。不更改实例数据。- 参数:
-
function- 要应用于每个条目的函数 - 返回:
- 一个新矩阵。
- 从以下版本开始:
- 1.7
-
mapToSelf
将每个条目替换为将函数应用于其结果。- 参数:
-
function- 要应用于每个条目的函数 - 返回:
- 对此矩阵的引用。
- 从以下版本开始:
- 1.7
-