Class BlockDenseDoubleMatrix2D
- All Implemented Interfaces:
Serializable
,Cloneable
,Comparable<Matrix>
,HasMetaData
,BaseMatrix
,BooleanCalculations
,CanPerformCalculations
,DenseMatrix
,DenseMatrix2D
,DenseMatrixMultiD
,BaseDoubleMatrix
,BasicDoubleCalculations
,DoubleCalculations
,BasicEntrywiseDoubleCalculations
,CreatorDoubleCalculations
,EntrywiseDoubleCalculations
,HyperbolicDoubleCalculations
,MiscEntrywiseDoubleCalculations
,RoundingDoubleCalculations
,TrigonometricDoubleCalculations
,DecompositionDoubleCalculations
,DiscretizeCalculations
,GeneralDoubleCalculations
,MiscGeneralDoubleCalculations
,MissingValueDoubleCalculations
,StatisticalDoubleCalculations
,DenseDoubleMatrix
,DenseDoubleMatrix2D
,DenseDoubleMatrixMultiD
,DoubleMatrix
,DoubleMatrix2D
,DoubleMatrixMultiD
,SparseDoubleMatrix
,SparseDoubleMatrix2D
,SparseDoubleMatrixMultiD
,BaseGenericMatrix<Double>
,DenseGenericMatrix<Double>
,DenseGenericMatrix2D<Double>
,DenseGenericMatrixMultiD<Double>
,GenericMatrix<Double>
,GenericMatrix2D<Double>
,GenericMatrixMultiD<Double>
,SparseGenericMatrix<Double>
,SparseGenericMatrix2D<Double>
,SparseGenericMatrixMultiD<Double>
,BaseMatrixProperties
,Clearable
,Conversions
,CoordinateFunctions
,CoreObject
,DistanceMeasures
,ExtendedMatrixProperties
,GettersAndSetters
,HasBlockDoubleArray2D
,HasDescription
,HasGUIObject
,HasId
,HasLabel
,IntCalculations
,Matrix
,Matrix2D
,MatrixMultiD
,BaseNumberMatrix<Double>
,DenseNumberMatrix<Double>
,DenseNumberMatrix2D<Double>
,DenseNumberMatrixMultiD<Double>
,NumberMatrix<Double>
,NumberMatrix2D<Double>
,NumberMatrixMultiD<Double>
,SparseNumberMatrix<Double>
,SparseNumberMatrix2D<Double>
,SparseNumberMatrixMultiD<Double>
,ObjectCalculations
,SparseMatrix
,SparseMatrix2D
,SparseMatrixMultiD
,StringCalculations
Block Layout (example)
Example: a 4x4 matrix with block size 2x2 is internally re-organised into 4 separate blocks :
|(0,0) , (0, 1) | (0, 2) , (0, 3) |
|(1,0) , (1, 1) | (1, 2) , (1, 3) |
|----------------------------------
|(2,0) , (2, 1) | (2, 2) , (2, 3) |
|(3,0) , (3, 1) | (3, 2) , (3, 3) |
This can be described as a matrix of the following blocks:
| A | B |
| C | D |
Each block is mapped to a separate one-dimensional array. For example block A:
[ (0,0), (1,0), (0, 1), (1, 1)]
This layout is similar to what's described in [ref: II fig. 4b].
Choice of block size:
The blocks may be square and can be configured by the user at runtime. However, matrix multiplication performance will be sensitive to the choice of block size, depending on the amount of CPU cache available on the system.
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate double[][]
Matrix data by block number.protected BlockMatrixLayout
Layout of matrix and blocks.private static final long
Fields inherited from class org.ujmp.core.AbstractMatrix
guiObject, size
Fields inherited from interface org.ujmp.core.BaseMatrix
ALL, COLUMN, LINK, NEW, NONE, ORIG, ROW, X, Y, Z
Fields inherited from interface org.ujmp.core.doublematrix.DenseDoubleMatrix2D
Factory
Fields inherited from interface org.ujmp.core.DenseMatrix
Factory
Fields inherited from interface org.ujmp.core.DenseMatrix2D
Factory
Fields inherited from interface org.ujmp.core.doublematrix.DoubleMatrix
Factory
Fields inherited from interface org.ujmp.core.doublematrix.DoubleMatrix2D
Factory
Fields inherited from interface org.ujmp.core.interfaces.HasDescription
DESCRIPTION
Fields inherited from interface org.ujmp.core.annotation.HasMetaData
DIMENSIONMETADATA
Fields inherited from interface org.ujmp.core.Matrix
chol, divideMatrix, divideScalar, eig, Factory, inv, lu, minusMatrix, minusScalar, mtimes, plusMatrix, plusScalar, qr, solve, svd, timesMatrix, timesScalar, transpose
Fields inherited from interface org.ujmp.core.SparseMatrix
Factory
Fields inherited from interface org.ujmp.core.SparseMatrix2D
Factory
-
Constructor Summary
ConstructorsConstructorDescriptionBlockDenseDoubleMatrix2D
(double[][] values) BlockDenseDoubleMatrix2D
(double[][] values, int blockStripeSize, BlockMatrixLayout.BlockOrder blockOrder) Create a block matrix from a jagged array.BlockDenseDoubleMatrix2D
(int rows, int cols) Create a new matrix with the specified size, and specified block stripe size.BlockDenseDoubleMatrix2D
(int rows, int cols, int blockStripeSize, BlockMatrixLayout.BlockOrder blockOrder) Create a new matrix with the specified size, and specified block stripe size.BlockDenseDoubleMatrix2D
(int rows, int cols, BlockMatrixLayout.BlockOrder blockOrder) Create a new matrix with the given size (rows, cols) and block layout.Constructor which takes an existing BlockMatrix to copy data and structure from.Constructor which takes an existing Matrix to copy data and structure from.BlockDenseDoubleMatrix2D
(Matrix m, int blockStripeSize) Constructor which takes a Matrix and a proposed default block stripe size.BlockDenseDoubleMatrix2D
(Matrix m, int blockStripeSize, BlockMatrixLayout.BlockOrder blockOrder) Constructor which takes a Matrix and a proposed default block stripe size. -
Method Summary
Modifier and TypeMethodDescriptionprotected void
addBlockData
(int row, int column, double[] newData) clone()
private static int
deriveDefaultBlockStripeSize
(int rows, int cols) divide
(double value) Divides every entry in the matrix by a scalar.Calculates an entrywise division of the two matrices.void
fill
(double[][] data) void
fill
(double[][] data, int startRow, int startCol) Populate matrix with given data.(package private) double[]
getBlockData
(int row, int column) Get block holding the specified row and column.final double[][]
final BlockMatrixLayout
final int
double
getDouble
(int row, int col) double
getDouble
(long row, long column) minus
(double value) Subtracts a specified value from all entries in the matrix.Calculates the difference of the entries in both matricesShortcut to create a BlockMatrix for targetplus
(double value) Adds a specified value to all entries in the matrix.Calculates the sum of the entries in both matricesChange layout of blocks in this matrix (e.g.void
setDouble
(double value, int row, int column) void
setDouble
(double value, long row, long column) times
(double value) Multiplies every entry in the matrix with a scalar.Calculates the entrywise product of the two matrices.Returns the transpose of the current matrix.transpose
(Calculation.Ret returnType) Returns the transpose of the Matrix, where rows and columns are exchanged.Methods inherited from class org.ujmp.core.doublematrix.stub.AbstractDenseDoubleMatrix2D
availableCoordinates, clear, containsCoordinates, getAsDouble, getAsDouble, getDimensionCount, getObject, getObject, isSparse, setAsDouble, setAsDouble, setObject, setObject
Methods inherited from class org.ujmp.core.doublematrix.stub.AbstractDoubleMatrix2D
getDouble, setDouble
Methods inherited from class org.ujmp.core.doublematrix.stub.AbstractDoubleMatrix
getAsDouble, getNumber, getObject, getValueType, setAsDouble, setNumber, setObject
Methods inherited from class org.ujmp.core.genericmatrix.stub.AbstractGenericMatrix
getAsObject, setAsObject
Methods inherited from class org.ujmp.core.AbstractMatrix
abs, addMissing, allCoordinates, allValues, and, and, append, appendHorizontally, appendVertically, atimes, bigDecimalValue, bigIntegerValue, booleanValue, bootstrap, bootstrap, ceil, center, charValue, chebyshevDistanceTo, chol, compareTo, containsBigDecimal, containsBigInteger, containsBoolean, containsByte, containsChar, containsDate, containsDouble, containsFloat, containsInt, containsLong, containsMissingValues, containsNull, containsObject, containsShort, containsString, convert, convertEncoding, corrcoef, cos, cosh, cosineSimilarity, cosineSimilarityTo, countMissing, cov, cumprod, cumsum, dateValue, delete, delete, delete, deleteColumns, deleteColumns, deleteColumnsWithMissingValues, deleteRows, deleteRows, deleteRowsWithMissingValues, det, diag, diff, discretize, discretize, discretizeToBoolean, discretizeToColumns, divide, divide, doubleValue, eig, eigSymm, eq, eq, equals, equalsAnnotation, equalsContent, euklideanDistance, euklideanDistanceTo, exp, exportTo, extractAnnotation, eye, fadeIn, fadeOut, fill, fireValueChanged, fireValueChanged, fireValueChanged, flipdim, floatValue, floor, ge, ge, getAbsoluteValueMean, getAbsoluteValueSum, getAsBigDecimal, getAsBigInteger, getAsBoolean, getAsByte, getAsByteArray, getAsChar, getAsDate, getAsFloat, getAsInt, getAsLong, getAsMatrix, getAsShort, getAsString, getColumnCount, getColumnForLabel, getColumnLabel, getColumnList, getCoordinatesOfMaximum, getCoordinatesOfMinimum, getCoreObjectId, getDescription, getDimensionLabel, getDimensionMetaData, getEuklideanValue, getFactory, getGUIObject, getId, getLabel, getLabelObject, getMaxValue, getMeanValue, getMetaData, getMetaData, getMetaDataDimensionMatrix, getMetaDataDouble, getMetaDataMatrix, getMetaDataString, getMinValue, getPositionForLabel, getPreferredObject, getRMS, getRowCount, getRowForLabel, getRowLabel, getRowList, getSize, getSize, getStdValue, getValueCount, getValueSum, getZCount, ginv, grayScale, gt, gt, importFrom, impute, includeAnnotation, indexOfMax, indexOfMin, intValue, inv, invSPD, invSymm, isColumnVector, isDiagonal, isEmpty, isMultidimensionalMatrix, isReadOnly, isResizable, isRowVector, isScalar, isSingular, isSPD, isSquare, isSymmetric, isTransient, le, le, log, log10, log2, logistic, longValue, lowerCase, lt, lt, lu, manhattenDistance, manhattenDistanceTo, max, mean, min, minkowskiDistance, minkowskiDistanceTo, minus, minus, mtimes, mutualInf, nans, ne, ne, nonZeroCoordinates, norm1, norm2, normalize, normF, normInf, not, ones, or, or, pairedTTest, pdet, pinv, pinv, plus, plus, power, power, princomp, prod, qr, rand, randn, rank, removePunctuation, removeWords, replace, replaceMissingBy, replaceRegex, replaceRegex, reshape, round, save, save, select, select, select, selectColumns, selectColumns, selectedCoordinates, selectedCoordinates, selectRows, selectRows, setAsBigDecimal, setAsBigInteger, setAsBoolean, setAsByte, setAsByteArray, setAsChar, setAsDate, setAsFloat, setAsInt, setAsLong, setAsMatrix, setAsShort, setAsString, setColumnLabel, setContent, setDescription, setDimensionLabel, setDimensionMetaData, setId, setLabel, setMetaData, setMetaData, setMetaDataDimensionMatrix, setRowLabel, setSize, share, share, showGUI, shuffle, sign, sin, sinh, solve, solveSPD, solveSymm, sortrows, sqrt, squeeze, standardize, std, stem, stringValue, subMatrix, sum, svd, svd, swap, tan, tanh, tanh, tfIdf, times, times, toBigDecimalArray, toBigDecimalMatrix, toBigIntegerArray, toBigIntegerMatrix, toBooleanArray, toBooleanMatrix, toByteArray, toByteMatrix, toCharArray, toCharMatrix, toColumnVector, toDateArray, toDoubleArray, toDoubleMatrix, toFloatArray, toFloatMatrix, toHtml, toIntArray, toIntMatrix, toListMatrix, toLongArray, toLongMatrix, toMapMatrix, toObjectArray, toObjectMatrix, toRowVector, toSetMatrix, toShortArray, toShortMatrix, toString, toStringArray, toStringMatrix, trace, translate, transpose, tril, triu, unique, uniqueValueCount, upperCase, var, xor, xor, zeros
Methods inherited from class java.lang.Number
byteValue, shortValue
Methods inherited from class java.lang.Object
finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.ujmp.core.BaseMatrix
getFactory
Methods inherited from interface org.ujmp.core.interfaces.BaseMatrixProperties
allValues, equals, equalsAnnotation, equalsContent, getColumnCount, getColumnList, getRowCount, getRowList, getSize, getSize, getValueCount, getValueType, getZCount, isColumnVector, isDiagonal, isEmpty, isMultidimensionalMatrix, isReadOnly, isResizable, isRowVector, isScalar, isSingular, isSquare, isSymmetric, isTransient, setSize, toString
Methods inherited from interface org.ujmp.core.doublematrix.calculation.basic.BasicDoubleCalculations
atimes, divide, divide, minus, minus, mtimes, plus, plus, times, times
Methods inherited from interface org.ujmp.core.doublematrix.calculation.entrywise.basic.BasicEntrywiseDoubleCalculations
abs, exp, log, log10, log2, logistic, power, power, sign, sqrt
Methods inherited from interface org.ujmp.core.booleanmatrix.calculation.BooleanCalculations
and, and, eq, eq, ge, ge, gt, gt, le, le, lt, lt, ne, ne, not, or, or, xor, xor
Methods inherited from interface java.lang.Comparable
compareTo
Methods inherited from interface org.ujmp.core.interfaces.Conversions
toBigDecimalMatrix, toBigIntegerMatrix, toBooleanMatrix, toByteMatrix, toCharMatrix, toDoubleMatrix, toFloatMatrix, toIntMatrix, toListMatrix, toLongMatrix, toMapMatrix, toObjectMatrix, toSetMatrix, toShortMatrix, toStringMatrix
Methods inherited from interface org.ujmp.core.interfaces.CoordinateFunctions
allCoordinates, getCoordinatesOfMaximum, getCoordinatesOfMinimum, nonZeroCoordinates, selectedCoordinates, selectedCoordinates
Methods inherited from interface org.ujmp.core.interfaces.CoreObject
getCoreObjectId
Methods inherited from interface org.ujmp.core.doublematrix.calculation.entrywise.creators.CreatorDoubleCalculations
eye, nans, ones, rand, randn, zeros
Methods inherited from interface org.ujmp.core.doublematrix.calculation.general.decomposition.DecompositionDoubleCalculations
chol, eig, eigSymm, ginv, inv, invSPD, invSymm, lu, pinv, pinv, princomp, qr, solve, solveSPD, solveSymm, svd, svd
Methods inherited from interface org.ujmp.core.doublematrix.calculation.general.discretize.DiscretizeCalculations
discretize, discretize, discretizeToBoolean, discretizeToColumns
Methods inherited from interface org.ujmp.core.interfaces.DistanceMeasures
chebyshevDistanceTo, cosineSimilarity, cosineSimilarityTo, euklideanDistance, euklideanDistanceTo, manhattenDistance, manhattenDistanceTo, minkowskiDistance, minkowskiDistanceTo
Methods inherited from interface org.ujmp.core.interfaces.ExtendedMatrixProperties
bigDecimalValue, bigIntegerValue, booleanValue, byteValue, charValue, containsBigDecimal, containsBigInteger, containsBoolean, containsByte, containsChar, containsDate, containsDouble, containsFloat, containsInt, containsLong, containsMissingValues, containsNull, containsObject, containsShort, containsString, dateValue, det, doubleValue, floatValue, getAbsoluteValueMean, getAbsoluteValueSum, getEuklideanValue, getMaxValue, getMeanValue, getMinValue, getRMS, getStdValue, getValueSum, intValue, isSPD, longValue, norm1, norm2, normF, normInf, pdet, rank, setContent, shortValue, stringValue, trace
Methods inherited from interface org.ujmp.core.interfaces.GettersAndSetters
getAsBigDecimal, getAsBigInteger, getAsBoolean, getAsByte, getAsByteArray, getAsChar, getAsDate, getAsDouble, getAsFloat, getAsInt, getAsLong, getAsMatrix, getAsObject, getAsShort, getAsString, getPreferredObject, setAsBigDecimal, setAsBigInteger, setAsBoolean, setAsByte, setAsByteArray, setAsChar, setAsDate, setAsDouble, setAsFloat, setAsInt, setAsLong, setAsMatrix, setAsObject, setAsShort, setAsString, toBigDecimalArray, toBigIntegerArray, toBooleanArray, toByteArray, toCharArray, toDateArray, toDoubleArray, toFloatArray, toIntArray, toLongArray, toObjectArray, toShortArray, toStringArray
Methods inherited from interface org.ujmp.core.interfaces.HasDescription
getDescription, setDescription
Methods inherited from interface org.ujmp.core.interfaces.HasGUIObject
getGUIObject, showGUI
Methods inherited from interface org.ujmp.core.interfaces.HasLabel
getLabel, getLabelObject, setLabel
Methods inherited from interface org.ujmp.core.annotation.HasMetaData
getColumnForLabel, getColumnLabel, getDimensionLabel, getDimensionMetaData, getMetaData, getMetaData, getMetaDataDimensionMatrix, getMetaDataDouble, getMetaDataMatrix, getMetaDataString, getPositionForLabel, getRowForLabel, getRowLabel, setColumnLabel, setDimensionLabel, setDimensionMetaData, setMetaData, setMetaData, setMetaDataDimensionMatrix, setRowLabel
Methods inherited from interface org.ujmp.core.doublematrix.calculation.entrywise.hyperbolic.HyperbolicDoubleCalculations
cosh, sinh, tanh, tanh
Methods inherited from interface org.ujmp.core.Matrix
exportTo, fireValueChanged, fireValueChanged, fireValueChanged, importFrom, save, save, share, share, toHtml
Methods inherited from interface org.ujmp.core.doublematrix.calculation.entrywise.misc.MiscEntrywiseDoubleCalculations
grayScale
Methods inherited from interface org.ujmp.core.doublematrix.calculation.general.misc.MiscGeneralDoubleCalculations
append, appendHorizontally, appendVertically, center, fadeIn, fadeOut, normalize, replaceMissingBy, standardize
Methods inherited from interface org.ujmp.core.doublematrix.calculation.general.missingvalues.MissingValueDoubleCalculations
addMissing, countMissing, deleteColumnsWithMissingValues, deleteRowsWithMissingValues, impute
Methods inherited from interface org.ujmp.core.objectmatrix.calculation.ObjectCalculations
bootstrap, bootstrap, convert, delete, delete, delete, deleteColumns, deleteColumns, deleteRows, deleteRows, diag, extractAnnotation, fill, flipdim, includeAnnotation, replace, reshape, select, select, select, selectColumns, selectColumns, selectRows, selectRows, shuffle, sortrows, squeeze, subMatrix, swap, toColumnVector, toRowVector, transpose, tril, triu, unique, uniqueValueCount
Methods inherited from interface org.ujmp.core.doublematrix.calculation.entrywise.rounding.RoundingDoubleCalculations
ceil, floor, round
Methods inherited from interface org.ujmp.core.doublematrix.calculation.general.statistical.StatisticalDoubleCalculations
corrcoef, cov, cumprod, cumsum, diff, indexOfMax, indexOfMin, max, mean, min, mutualInf, pairedTTest, prod, std, sum, var
Methods inherited from interface org.ujmp.core.stringmatrix.calculation.StringCalculations
convertEncoding, lowerCase, removePunctuation, removeWords, replaceRegex, replaceRegex, stem, tfIdf, translate, upperCase
Methods inherited from interface org.ujmp.core.doublematrix.calculation.entrywise.trigonometric.TrigonometricDoubleCalculations
cos, sin, tan
-
Field Details
-
serialVersionUID
private static final long serialVersionUID- See Also:
-
data
private double[][] dataMatrix data by block number. -
layout
Layout of matrix and blocks.
-
-
Constructor Details
-
BlockDenseDoubleMatrix2D
public BlockDenseDoubleMatrix2D(double[][] values) -
BlockDenseDoubleMatrix2D
public BlockDenseDoubleMatrix2D(double[][] values, int blockStripeSize, BlockMatrixLayout.BlockOrder blockOrder) Create a block matrix from a jagged array.
All rows of the values array must have the same length.- Parameters:
values
- - the data to populate the matrix with.blockStripeSize
- - length of one side of a blockblockOrder
- - seeBlockMatrixLayout.BlockOrder
.- Throws:
NullPointerException
- if values is null, or values[0] is null.ArrayIndexOutOfBoundsException
- if any row is shorter than the first row.
-
BlockDenseDoubleMatrix2D
public BlockDenseDoubleMatrix2D(int rows, int cols, int blockStripeSize, BlockMatrixLayout.BlockOrder blockOrder) Create a new matrix with the specified size, and specified block stripe size.- Parameters:
rows
- - number of rows of the matrix.cols
- - number of columns of the matrix.blockStripeSize
- - length of one side of a square block.- Throws:
IllegalArgumentException
- if rows, cols or blockStripeSize are 0 or less, or blockOrder is null.
-
BlockDenseDoubleMatrix2D
Create a new matrix with the given size (rows, cols) and block layout.- See Also:
-
#BlockMatrix(int, int)
-
BlockDenseDoubleMatrix2D
public BlockDenseDoubleMatrix2D(int rows, int cols) Create a new matrix with the specified size, and specified block stripe size.- Parameters:
rows
- - number of rows of the matrix.cols
- - number of columns of the matrix.- Throws:
IllegalArgumentException
- if rows, cols are 0 or less.
-
BlockDenseDoubleMatrix2D
Constructor which takes an existing Matrix to copy data and structure from.
Block stripe size will be defaulted internally.- Parameters:
m
- - matrix to copy data from.
-
BlockDenseDoubleMatrix2D
Constructor which takes an existing BlockMatrix to copy data and structure from. -
BlockDenseDoubleMatrix2D
Constructor which takes a Matrix and a proposed default block stripe size.- Parameters:
m
- - matrix containing existing values.blockStripeSize
- - proposed default block size.
-
BlockDenseDoubleMatrix2D
public BlockDenseDoubleMatrix2D(Matrix m, int blockStripeSize, BlockMatrixLayout.BlockOrder blockOrder) Constructor which takes a Matrix and a proposed default block stripe size.- Parameters:
m
- - matrix containing existing values.blockStripeSize
- - proposed default block size.blockOrder
- row major or column major
-
-
Method Details
-
deriveDefaultBlockStripeSize
private static int deriveDefaultBlockStripeSize(int rows, int cols) -
addBlockData
protected void addBlockData(int row, int column, double[] newData) -
fill
public void fill(double[][] data) - See Also:
-
fill
public void fill(double[][] data, int startRow, int startCol) Populate matrix with given data.- Parameters:
data
- - to fill into matrixstartRow
- - row to start filling in data atstartCol
- - col to start at
-
getBlockData
double[] getBlockData(int row, int column) Get block holding the specified row and column. If none exist, create one.- Parameters:
row
- - in matrixcolumn
- - in matrix- Returns:
- double[] block where the given row,column is held.
-
getBlockLayout
- Returns:
BlockMatrixLayout
of this matrix.
-
getBlockStripeSize
public final int getBlockStripeSize()- Returns:
- blockSize of this matrix.
-
getDouble
public double getDouble(int row, int col) - Specified by:
getDouble
in interfaceDoubleMatrix2D
-
getDouble
public double getDouble(long row, long column) - Specified by:
getDouble
in interfaceDoubleMatrix2D
-
mtimes
Shortcut to create a BlockMatrix for target- Specified by:
mtimes
in interfaceBasicDoubleCalculations
- Overrides:
mtimes
in classAbstractDenseDoubleMatrix2D
- Parameters:
m2
- the second matrix- Returns:
- Matrix product
-
setDouble
public void setDouble(double value, int row, int column) - Specified by:
setDouble
in interfaceDoubleMatrix2D
-
setDouble
public void setDouble(double value, long row, long column) - Specified by:
setDouble
in interfaceDoubleMatrix2D
-
transpose
Returns the transpose of the current matrix.- Specified by:
transpose
in interfaceObjectCalculations
- Overrides:
transpose
in classAbstractDenseDoubleMatrix2D
- Returns:
- transpose of this matrix.
-
clone
- Specified by:
clone
in interfaceCoreObject
- Specified by:
clone
in interfaceMatrix
- Overrides:
clone
in classAbstractMatrix
-
transpose
Description copied from interface:ObjectCalculations
Returns the transpose of the Matrix, where rows and columns are exchanged. This works also if the Matrix has more than two dimensions.- Specified by:
transpose
in interfaceObjectCalculations
- Overrides:
transpose
in classAbstractMatrix
- Parameters:
returnType
- Defines if a new Matrix or a link should be returned.- Returns:
- transposed Matrix.
-
getBlockDoubleArray2D
public final double[][] getBlockDoubleArray2D()- Specified by:
getBlockDoubleArray2D
in interfaceHasBlockDoubleArray2D
-
plus
Description copied from interface:BasicDoubleCalculations
Adds a specified value to all entries in the matrix.- Specified by:
plus
in interfaceBasicDoubleCalculations
- Overrides:
plus
in classAbstractDenseDoubleMatrix2D
- Parameters:
value
- the value to add- Returns:
- Matrix with the entries plus the value
-
plus
Description copied from interface:BasicDoubleCalculations
Calculates the sum of the entries in both matrices- Specified by:
plus
in interfaceBasicDoubleCalculations
- Overrides:
plus
in classAbstractDenseDoubleMatrix2D
- Parameters:
value
- The matrix to add- Returns:
- matrix with sum values
-
minus
Description copied from interface:BasicDoubleCalculations
Calculates the difference of the entries in both matrices- Specified by:
minus
in interfaceBasicDoubleCalculations
- Overrides:
minus
in classAbstractDenseDoubleMatrix2D
- Parameters:
value
- The matrix to subtract- Returns:
- matrix with difference values
-
times
Description copied from interface:BasicDoubleCalculations
Calculates the entrywise product of the two matrices.- Specified by:
times
in interfaceBasicDoubleCalculations
- Overrides:
times
in classAbstractDenseDoubleMatrix2D
- Parameters:
value
- the second matrix- Returns:
- matrix with product of all entries
-
divide
Description copied from interface:BasicDoubleCalculations
Calculates an entrywise division of the two matrices.- Specified by:
divide
in interfaceBasicDoubleCalculations
- Overrides:
divide
in classAbstractDenseDoubleMatrix2D
- Parameters:
value
- the second matrix- Returns:
- matrix with all entries divided by the second matrix's entry.
-
minus
Description copied from interface:BasicDoubleCalculations
Subtracts a specified value from all entries in the matrix.- Specified by:
minus
in interfaceBasicDoubleCalculations
- Overrides:
minus
in classAbstractDenseDoubleMatrix2D
- Parameters:
value
- the value to subtract- Returns:
- Matrix with the entries minus the value
-
times
Description copied from interface:BasicDoubleCalculations
Multiplies every entry in the matrix with a scalar.- Specified by:
times
in interfaceBasicDoubleCalculations
- Overrides:
times
in classAbstractDenseDoubleMatrix2D
- Parameters:
value
- factor to multiply with- Returns:
- Matrix with all entries multiplied by a factor.
-
divide
Description copied from interface:BasicDoubleCalculations
Divides every entry in the matrix by a scalar.- Specified by:
divide
in interfaceBasicDoubleCalculations
- Overrides:
divide
in classAbstractDenseDoubleMatrix2D
- Parameters:
value
- factor by which to divide- Returns:
- Matrix with all entries divided by a factor.
-
setBlockOrder
Change layout of blocks in this matrix (e.g. switch form rowmajor to columnmajor).- Parameters:
order
- - new block layout order.- Returns:
- old BlockOrder.
-