## Uses of Class
org.apache.sysds.runtime.matrix.operators.AggregateUnaryOperator

- Packages that use AggregateUnaryOperator
  Package | Description
  --- | ---
  org.apache.sysds.runtime.compress |
  org.apache.sysds.runtime.compress.colgroup |
  org.apache.sysds.runtime.controlprogram.federated |
  org.apache.sysds.runtime.data |
  org.apache.sysds.runtime.instructions |
  org.apache.sysds.runtime.instructions.spark |
  org.apache.sysds.runtime.matrix.data |
  org.apache.sysds.runtime.meta |

- - ### Uses of AggregateUnaryOperator in org.apache.sysds.runtime.compress

    Methods in org.apache.sysds.runtime.compress with parameters of type AggregateUnaryOperator
    Modifier and Type | Method and Description
    --- | ---
    `MatrixBlock` | CompressedMatrixBlock.`aggregateUnaryOperations(AggregateUnaryOperator op, MatrixValue result, int blen, MatrixIndexes indexesIn)`
    `MatrixBlock` | CompressedMatrixBlock.`aggregateUnaryOperations(AggregateUnaryOperator op, MatrixValue result, int blen, MatrixIndexes indexesIn, boolean inCP)`
    `MatrixBlock` | AbstractCompressedMatrixBlock.`uaggouterchainOperations(MatrixBlock mbLeft, MatrixBlock mbRight, MatrixBlock mbOut, BinaryOperator bOp, AggregateUnaryOperator uaggOp)`

  - ### Uses of AggregateUnaryOperator in org.apache.sysds.runtime.compress.colgroup

    Methods in org.apache.sysds.runtime.compress.colgroup with parameters of type AggregateUnaryOperator
    Modifier and Type | Method and Description
    --- | ---
    `abstract void` | ColGroup.`unaryAggregateOperations(AggregateUnaryOperator op, double[] c)` Unary Aggregate operator, since aggregate operators require new object output, the output becomes an uncompressed matrix.
    `void` | ColGroupUncompressed.`unaryAggregateOperations(AggregateUnaryOperator op, double[] ret)`
    `void` | ColGroupValue.`unaryAggregateOperations(AggregateUnaryOperator op, double[] c)`
    `abstract void` | ColGroup.`unaryAggregateOperations(AggregateUnaryOperator op, double[] c, int rl, int ru)` Unary Aggregate operator, since aggregate operators require new object output, the output becomes an uncompressed matrix.
    `void` | ColGroupUncompressed.`unaryAggregateOperations(AggregateUnaryOperator op, double[] result, int rl, int ru)`
    `void` | ColGroupValue.`unaryAggregateOperations(AggregateUnaryOperator op, double[] c, int rl, int ru)`
    `void` | ColGroupUncompressed.`unaryAggregateOperations(AggregateUnaryOperator op, MatrixBlock ret)`

  - ### Uses of AggregateUnaryOperator in org.apache.sysds.runtime.controlprogram.federated

    Methods in org.apache.sysds.runtime.controlprogram.federated with parameters of type AggregateUnaryOperator
    Modifier and Type | Method and Description
    --- | ---
    `static MatrixBlock` | FederationUtils.`aggMatrix(AggregateUnaryOperator aop, Future<FederatedResponse>[] ffr, FederationMap map)`
    `static ScalarObject` | FederationUtils.`aggScalar(AggregateUnaryOperator aop, Future<FederatedResponse>[] ffr)`

  - ### Uses of AggregateUnaryOperator in org.apache.sysds.runtime.data

    Methods in org.apache.sysds.runtime.data with parameters of type AggregateUnaryOperator
    Modifier and Type | Method and Description
    --- | ---
    `BasicTensorBlock` | BasicTensorBlock.`aggregateUnaryOperations(AggregateUnaryOperator op, BasicTensorBlock result)` Aggregate a unary operation on this tensor.
    `static void` | LibTensorAgg.`aggregateUnaryTensor(BasicTensorBlock in, BasicTensorBlock out, AggregateUnaryOperator uaop)` Aggregate a tensor-block with the given unary operator.
    `static boolean` | LibTensorAgg.`isSupportedUnaryAggregateOperator(AggregateUnaryOperator op)` Determines whether the unary operator is supported.

  - ### Uses of AggregateUnaryOperator in org.apache.sysds.runtime.instructions

    Methods in org.apache.sysds.runtime.instructions that return AggregateUnaryOperator
    Modifier and Type | Method and Description
    --- | ---
    `static AggregateUnaryOperator` | InstructionUtils.`parseBasicAggregateUnaryOperator(String opcode)`
    `static AggregateUnaryOperator` | InstructionUtils.`parseBasicAggregateUnaryOperator(String opcode, int numThreads)`
    `static AggregateUnaryOperator` | InstructionUtils.`parseBasicCumulativeAggregateUnaryOperator(UnaryOperator uop)`
    `static AggregateUnaryOperator` | InstructionUtils.`parseCumulativeAggregateUnaryOperator(String opcode)`

  - ### Uses of AggregateUnaryOperator in org.apache.sysds.runtime.instructions.spark

    Constructors in org.apache.sysds.runtime.instructions.spark with parameters of type AggregateUnaryOperator
    Constructor and Description
    `RDDBinUaggChainFunction(BinaryOperator bop, AggregateUnaryOperator uaggop)`
    `RDDUAggFunction2(AggregateUnaryOperator op, int blen)`
    `RDDUTensorAggFunction2(AggregateUnaryOperator op)`

  - ### Uses of AggregateUnaryOperator in org.apache.sysds.runtime.matrix.data

    Methods in org.apache.sysds.runtime.matrix.data with parameters of type AggregateUnaryOperator
    Modifier and Type | Method and Description
    --- | ---
    `static void` | LibMatrixOuterAgg.`aggregateMatrix(MatrixBlock in1Val, MatrixBlock outVal, double[] bv, int[] bvi, BinaryOperator bOp, AggregateUnaryOperator uaggOp)`
    `static void` | LibMatrixAgg.`aggregateUnaryMatrix(MatrixBlock in, MatrixBlock out, AggregateUnaryOperator uaop)`
    `static void` | LibMatrixAgg.`aggregateUnaryMatrix(MatrixBlock in, MatrixBlock out, AggregateUnaryOperator uaop, int k)`
    `abstract MatrixValue` | MatrixValue.`aggregateUnaryOperations(AggregateUnaryOperator op, MatrixValue result, int blen, MatrixIndexes indexesIn)`
    `MatrixValue` | MatrixCell.`aggregateUnaryOperations(AggregateUnaryOperator op, MatrixValue result, int blen, MatrixIndexes indexesIn)`
    `MatrixBlock` | MatrixBlock.`aggregateUnaryOperations(AggregateUnaryOperator op, MatrixValue result, int blen, MatrixIndexes indexesIn)`
    `MatrixValue` | WeightedCell.`aggregateUnaryOperations(AggregateUnaryOperator op, MatrixValue result, int blen, MatrixIndexes indexesIn)`
    `MatrixValue` | CM_N_COVCell.`aggregateUnaryOperations(AggregateUnaryOperator op, MatrixValue result, int blen, MatrixIndexes indexesIn)`
    `abstract MatrixValue` | MatrixValue.`aggregateUnaryOperations(AggregateUnaryOperator op, MatrixValue result, int blen, MatrixIndexes indexesIn, boolean inCP)`
    `MatrixValue` | MatrixCell.`aggregateUnaryOperations(AggregateUnaryOperator op, MatrixValue result, int blen, MatrixIndexes indexesIn, boolean inCP)`
    `MatrixBlock` | MatrixBlock.`aggregateUnaryOperations(AggregateUnaryOperator op, MatrixValue result, int blen, MatrixIndexes indexesIn, boolean inCP)`
    `MatrixValue` | CM_N_COVCell.`aggregateUnaryOperations(AggregateUnaryOperator op, MatrixValue result, int blen, MatrixIndexes indexesIn, boolean inCP)`
    `static boolean` | LibMatrixOuterAgg.`isRowIndexMax(AggregateUnaryOperator uaggOp)` This will return if uaggOp is of type RowIndexMax
    `static boolean` | LibMatrixOuterAgg.`isRowIndexMin(AggregateUnaryOperator uaggOp)` This will return if uaggOp is of type RowIndexMin
    `static boolean` | LibMatrixOuterAgg.`isSupportedUaggOp(AggregateUnaryOperator uaggOp, BinaryOperator bOp)`
    `static boolean` | LibMatrixAgg.`isSupportedUnaryAggregateOperator(AggregateUnaryOperator op)`
    `static void` | OperationsOnMatrixValues.`performAggregateUnary(MatrixIndexes indexesIn, MatrixValue valueIn, MatrixIndexes indexesOut, MatrixValue valueOut, AggregateUnaryOperator op, int blen)`
    `static int[]` | LibMatrixOuterAgg.`prepareRowIndices(int iCols, double[] vmb, BinaryOperator bOp, AggregateUnaryOperator uaggOp)`
    `static void` | LibMatrixAgg.`recomputeIndexes(MatrixBlock out, AggregateUnaryOperator op, int blen, MatrixIndexes ix)` Recompute outputs (e.g., maxindex or minindex) according to block indexes from MR.
    `static void` | LibMatrixOuterAgg.`resetOutputMatrix(MatrixIndexes in1Ix, MatrixBlock in1Val, MatrixIndexes outIx, MatrixBlock outVal, AggregateUnaryOperator uaggOp)` ReSet output matrix
    `static boolean` | LibMatrixAgg.`satisfiesMultiThreadingConstraints(MatrixBlock in, MatrixBlock out, AggregateUnaryOperator uaop, int k)`
    `MatrixBlock` | MatrixBlock.`uaggouterchainOperations(MatrixBlock mbLeft, MatrixBlock mbRight, MatrixBlock mbOut, BinaryOperator bOp, AggregateUnaryOperator uaggOp)`
    `static void` | LibMatrixCUDA.`unaryAggregate(ExecutionContext ec, GPUContext gCtx, String instName, MatrixObject in1, String output, AggregateUnaryOperator op)` Entry point to perform Unary aggregate operations on the GPU.

  - ### Uses of AggregateUnaryOperator in org.apache.sysds.runtime.meta

    Methods in org.apache.sysds.runtime.meta with parameters of type AggregateUnaryOperator
    Modifier and Type | Method and Description
    --- | ---
    `static void` | DataCharacteristics.`aggregateUnary(DataCharacteristics dim, AggregateUnaryOperator op, DataCharacteristics dimOut)`

Copyright © 2020 The Apache Software Foundation. All rights reserved.