Class MatrixCell
- java.lang.Object
-
- org.apache.sysds.runtime.matrix.data.MatrixValue
-
- org.apache.sysds.runtime.matrix.data.MatrixCell
-
- All Implemented Interfaces:
Serializable,Comparable,org.apache.hadoop.io.Writable,org.apache.hadoop.io.WritableComparable
- Direct Known Subclasses:
WeightedCell
public class MatrixCell extends MatrixValue implements Serializable
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.apache.sysds.runtime.matrix.data.MatrixValue
MatrixValue.CellIndex
-
-
Constructor Summary
Constructors Constructor Description MatrixCell()MatrixCell(double v)MatrixCell(MatrixCell that)MatrixCell(MatrixValue that)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description MatrixValueaggregateUnaryOperations(AggregateUnaryOperator op, MatrixValue result, int blen, MatrixIndexes indexesIn)MatrixValueaggregateUnaryOperations(AggregateUnaryOperator op, MatrixValue result, int blen, MatrixIndexes indexesIn, boolean inCP)voidappend(MatrixValue valueIn2, ArrayList<IndexedMatrixValue> outlist, int blen, boolean cbind, boolean m2IsLast, int nextNCol)MatrixValuebinaryOperations(BinaryOperator op, MatrixValue thatValue, MatrixValue result)MatrixValuebinaryOperationsInPlace(BinaryOperator op, MatrixValue thatValue)intcompareTo(Object o)intcompareTo(MatrixCell o)voidcopy(MatrixValue that)Copy that MatrixValue into this MatrixValue.voidcopy(MatrixValue that, boolean sp)Copy that MatrixValue into this MatrixValue.voidctableOperations(Operator op, double scalarThat, double scalarThat2, CTableMap resultMap, MatrixBlock resultBlock)voidctableOperations(Operator op, double scalarThat, MatrixValue that2, CTableMap resultMap, MatrixBlock resultBlock)voidctableOperations(Operator op, MatrixIndexes ix1, double scalarThat, boolean left, int blen, CTableMap resultMap, MatrixBlock resultBlock)voidctableOperations(Operator op, MatrixValue that, double scalarThat2, boolean ignoreZeros, CTableMap ctableResult, MatrixBlock ctableResultBlock)voidctableOperations(Operator op, MatrixValue that, MatrixValue that2, CTableMap resultMap, MatrixBlock resultBlock)voiddenseScalarOperationsInPlace(ScalarOperator op)booleanequals(Object o)longgetNonZeros()intgetNumColumns()intgetNumRows()doublegetValue()doublegetValue(int r, int c)inthashCode()voidincrementalAggregate(AggregateOperator aggOp, MatrixValue newWithCorrection)voidincrementalAggregate(AggregateOperator aggOp, MatrixValue correction, MatrixValue newWithCorrection, boolean deep)booleanisEmpty()booleanisInSparseFormat()voidreadFields(DataInput in)MatrixValuereorgOperations(ReorgOperator op, MatrixValue result, int startRow, int startColumn, int length)MatrixValuereplaceOperations(MatrixValue result, double pattern, double replacement)voidreset()voidreset(int rl, int cl)voidreset(int rl, int cl, boolean sp)voidreset(int rl, int cl, boolean sp, long nnzs)voidreset(int rl, int cl, double v)MatrixValuescalarOperations(ScalarOperator op, MatrixValue result)voidsetValue(double v)voidsetValue(int r, int c, double v)voidslice(ArrayList<IndexedMatrixValue> outlist, IndexRange range, int rowCut, int colCut, int blen, int boundaryRlen, int boundaryClen)Slice out up to 4 matrixBlocks that are separated by the row and col Cuts.voidsparseScalarOperationsInPlace(ScalarOperator op)voidsparseUnaryOperationsInPlace(UnaryOperator op)MatrixValueunaryOperations(UnaryOperator op, MatrixValue result)voidwrite(DataOutput out)MatrixValuezeroOutOperations(MatrixValue result, IndexRange range, boolean complementary)
-
-
-
Constructor Detail
-
MatrixCell
public MatrixCell()
-
MatrixCell
public MatrixCell(MatrixCell that)
-
MatrixCell
public MatrixCell(MatrixValue that)
-
MatrixCell
public MatrixCell(double v)
-
-
Method Detail
-
setValue
public void setValue(double v)
-
getValue
public double getValue()
-
copy
public void copy(MatrixValue that, boolean sp)
Description copied from class:MatrixValueCopy that MatrixValue into this MatrixValue. But select sparse destination block depending on boolean parameter.- Specified by:
copyin classMatrixValue- Parameters:
that- object to copy the values into.sp- boolean specifying if output should be forced sparse or dense. (only applicable if the 'that' is a MatrixBlock)
-
copy
public void copy(MatrixValue that)
Description copied from class:MatrixValueCopy that MatrixValue into this MatrixValue. If the MatrixValue is a MatrixBlock evaluate the sparsity of the original matrix, and copy into either a sparse or a dense matrix.- Specified by:
copyin classMatrixValue- Parameters:
that- object to copy the values into.
-
getNonZeros
public long getNonZeros()
- Specified by:
getNonZerosin classMatrixValue
-
getNumColumns
public int getNumColumns()
- Specified by:
getNumColumnsin classMatrixValue
-
getNumRows
public int getNumRows()
- Specified by:
getNumRowsin classMatrixValue
-
getValue
public double getValue(int r, int c)- Specified by:
getValuein classMatrixValue
-
isInSparseFormat
public boolean isInSparseFormat()
- Specified by:
isInSparseFormatin classMatrixValue
-
isEmpty
public boolean isEmpty()
- Specified by:
isEmptyin classMatrixValue
-
readFields
public void readFields(DataInput in) throws IOException
- Specified by:
readFieldsin interfaceorg.apache.hadoop.io.Writable- Throws:
IOException
-
reset
public void reset()
- Specified by:
resetin classMatrixValue
-
reset
public void reset(int rl, int cl)- Specified by:
resetin classMatrixValue
-
reset
public void reset(int rl, int cl, boolean sp)- Specified by:
resetin classMatrixValue
-
reset
public void reset(int rl, int cl, boolean sp, long nnzs)- Specified by:
resetin classMatrixValue
-
reset
public void reset(int rl, int cl, double v)- Specified by:
resetin classMatrixValue
-
setValue
public void setValue(int r, int c, double v)- Specified by:
setValuein classMatrixValue
-
write
public void write(DataOutput out) throws IOException
- Specified by:
writein interfaceorg.apache.hadoop.io.Writable- Throws:
IOException
-
aggregateUnaryOperations
public MatrixValue aggregateUnaryOperations(AggregateUnaryOperator op, MatrixValue result, int blen, MatrixIndexes indexesIn)
- Specified by:
aggregateUnaryOperationsin classMatrixValue
-
binaryOperations
public MatrixValue binaryOperations(BinaryOperator op, MatrixValue thatValue, MatrixValue result)
- Specified by:
binaryOperationsin classMatrixValue
-
binaryOperationsInPlace
public MatrixValue binaryOperationsInPlace(BinaryOperator op, MatrixValue thatValue)
- Specified by:
binaryOperationsInPlacein classMatrixValue
-
denseScalarOperationsInPlace
public void denseScalarOperationsInPlace(ScalarOperator op)
-
reorgOperations
public MatrixValue reorgOperations(ReorgOperator op, MatrixValue result, int startRow, int startColumn, int length)
- Specified by:
reorgOperationsin classMatrixValue
-
scalarOperations
public MatrixValue scalarOperations(ScalarOperator op, MatrixValue result)
- Specified by:
scalarOperationsin classMatrixValue
-
sparseScalarOperationsInPlace
public void sparseScalarOperationsInPlace(ScalarOperator op)
-
sparseUnaryOperationsInPlace
public void sparseUnaryOperationsInPlace(UnaryOperator op)
-
unaryOperations
public MatrixValue unaryOperations(UnaryOperator op, MatrixValue result)
- Specified by:
unaryOperationsin classMatrixValue
-
compareTo
public int compareTo(MatrixCell o)
-
compareTo
public int compareTo(Object o)
- Specified by:
compareToin interfaceComparable
-
incrementalAggregate
public void incrementalAggregate(AggregateOperator aggOp, MatrixValue correction, MatrixValue newWithCorrection, boolean deep)
- Specified by:
incrementalAggregatein classMatrixValue
-
zeroOutOperations
public MatrixValue zeroOutOperations(MatrixValue result, IndexRange range, boolean complementary)
- Specified by:
zeroOutOperationsin classMatrixValue
-
incrementalAggregate
public void incrementalAggregate(AggregateOperator aggOp, MatrixValue newWithCorrection)
- Specified by:
incrementalAggregatein classMatrixValue
-
ctableOperations
public void ctableOperations(Operator op, MatrixValue that, MatrixValue that2, CTableMap resultMap, MatrixBlock resultBlock)
- Specified by:
ctableOperationsin classMatrixValue
-
ctableOperations
public void ctableOperations(Operator op, MatrixValue that, double scalarThat2, boolean ignoreZeros, CTableMap ctableResult, MatrixBlock ctableResultBlock)
- Specified by:
ctableOperationsin classMatrixValue
-
ctableOperations
public void ctableOperations(Operator op, double scalarThat, double scalarThat2, CTableMap resultMap, MatrixBlock resultBlock)
- Specified by:
ctableOperationsin classMatrixValue
-
ctableOperations
public void ctableOperations(Operator op, MatrixIndexes ix1, double scalarThat, boolean left, int blen, CTableMap resultMap, MatrixBlock resultBlock)
- Specified by:
ctableOperationsin classMatrixValue
-
ctableOperations
public void ctableOperations(Operator op, double scalarThat, MatrixValue that2, CTableMap resultMap, MatrixBlock resultBlock)
- Specified by:
ctableOperationsin classMatrixValue
-
slice
public void slice(ArrayList<IndexedMatrixValue> outlist, IndexRange range, int rowCut, int colCut, int blen, int boundaryRlen, int boundaryClen)
Description copied from class:MatrixValueSlice out up to 4 matrixBlocks that are separated by the row and col Cuts. This is used in the context of spark execution to distributed sliced out matrix blocks of correct block size.- Specified by:
slicein classMatrixValue- Parameters:
outlist- The output matrix blocks that is extracted from the matrixrange- An index range containing overlapping information.rowCut- The row to cut and split the matrix.colCut- The column to cut ans split the matrix.blen- The Block size of the output matrices.boundaryRlen- The row length of the edge case matrix block, used for the final blocks that does not have enough rows to construct a full block.boundaryClen- The col length of the edge case matrix block, used for the final blocks that does not have enough cols to construct a full block.
-
replaceOperations
public MatrixValue replaceOperations(MatrixValue result, double pattern, double replacement)
- Specified by:
replaceOperationsin classMatrixValue
-
aggregateUnaryOperations
public MatrixValue aggregateUnaryOperations(AggregateUnaryOperator op, MatrixValue result, int blen, MatrixIndexes indexesIn, boolean inCP)
- Specified by:
aggregateUnaryOperationsin classMatrixValue
-
append
public void append(MatrixValue valueIn2, ArrayList<IndexedMatrixValue> outlist, int blen, boolean cbind, boolean m2IsLast, int nextNCol)
- Specified by:
appendin classMatrixValue
-
-