org.apache.sysds.lops

## Class Unary

- java.lang.Object
- - org.apache.sysds.lops.Lop
  - - org.apache.sysds.lops.Unary

-     public class Unary
      extends Lop

  Lop to perform following operations: with one operand -- NOT(A), ABS(A), SQRT(A), LOG(A) with two operands where one of them is a scalar -- H=H*i, H=H*5, EXP(A,2), LOG(A,2)

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class org.apache.sysds.lops.Lop

      `Lop.SimpleInstType, Lop.Type, Lop.VisitStatus`

  - ### Field Summary

    - ### Fields inherited from class org.apache.sysds.lops.Lop

      `_beginColumn, _beginLine, _endColumn, _endLine, _filename, CP_CHILD_THREAD, CP_ROOT_THREAD_ID, DATATYPE_PREFIX, FILE_SEPARATOR, FRAME_VAR_NAME_PREFIX, INSTRUCTION_DELIMITOR, LITERAL_PREFIX, MATRIX_VAR_NAME_PREFIX, NAME_VALUE_SEPARATOR, OPERAND_DELIMITOR, PROCESS_PREFIX, SAMPLE_FRACTION, SCALAR_VAR_NAME_PREFIX, UPDATE_INPLACE_PREFIX, VALUETYPE_PREFIX, VARIABLE_NAME_PLACEHOLDER`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `Unary(Lop input1, Lop input2, Types.OpOp1 op, Types.DataType dt, Types.ValueType vt, Types.ExecType et, int numThreads)` Constructor to perform a unary operation with 2 inputs
    `Unary(Lop input1, Types.OpOp1 op, Types.DataType dt, Types.ValueType vt, Types.ExecType et, int numThreads, boolean inplace)` Constructor to perform a unary operation with 1 input.

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `String` | `getInstructions(String input1, String output)` Method should be overridden if needed
    `String` | `getInstructions(String input1, String input2, String output)` Method should be overridden if needed
    `static boolean` | `isMultiThreadedOp(Types.OpOp1 op)`
    `String` | `toString()` Method to have Lops print their state.

    - ### Methods inherited from class org.apache.sysds.lops.Lop

      `addInput, addOutput, addToDag, createReachable, getAggType, getBeginColumn, getBeginLine, getBroadcastInput, getDataType, getEndColumn, getEndLine, getExecType, getFilename, getID, getInputs, getInstructions, getInstructions, getInstructions, getInstructions, getInstructions, getInstructions, getInstructions, getInstructions, getInstructions, getInstructions, getLevel, getOutputParameters, getOutputs, getPrivacyConstraint, getProducesIntermediateOutput, getReachable, getSimpleInstructionType, getType, getValueType, getVisited, isAllOutputsCP, isDataExecLocation, isVariable, prepInputOperand, prepInputOperand, prepOperand, prepOperand, prepOutputOperand, prepOutputOperand, prepOutputOperand, prepScalarInputOperand, prepScalarInputOperand, prepScalarLabel, prepScalarOperand, printErrorLocation, removeConsumer, removeOutput, replaceInput, resetVisitStatus, setAllPositions, setBeginColumn, setBeginLine, setConsumerCount, setDataType, setEndColumn, setEndLine, setExecType, setFederatedOutput, setFilename, setPrivacyConstraint, setValueType, setVisited`

    - ### Methods inherited from class java.lang.Object

      `equals, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### Unary

          public Unary(Lop input1,
                       Lop input2,
                       Types.OpOp1 op,
                       Types.DataType dt,
                       Types.ValueType vt,
                       Types.ExecType et,
                       int numThreads)

      Constructor to perform a unary operation with 2 inputs
      Parameters:
        `input1` - low-level operator 1
        `input2` - low-level operator 2
        `op` - operation type
        `dt` - data type
        `vt` - value type
        `et` - execution type
        `numThreads` - number of threads for execution

    - #### Unary

          public Unary(Lop input1,
                       Types.OpOp1 op,
                       Types.DataType dt,
                       Types.ValueType vt,
                       Types.ExecType et,
                       int numThreads,
                       boolean inplace)

      Constructor to perform a unary operation with 1 input.
      Parameters:
        `input1` - low-level operator 1
        `op` - operation type
        `dt` - data type
        `vt` - value type
        `et` - execution type
        `numThreads` - number of threads
        `inplace` - inplace behavior

  - ### Method Detail

    - #### toString

          public String toString()

      Description copied from class: `Lop`
      Method to have Lops print their state. This is for debugging purposes.
      Specified by:
        `toString` in class `Lop`

    - #### isMultiThreadedOp

          public static boolean isMultiThreadedOp(Types.OpOp1 op)

    - #### getInstructions

          public String getInstructions(String input1,
                                        String output)

      Description copied from class: `Lop`
      Method should be overridden if needed
      Overrides:
        `getInstructions` in class `Lop`
      Parameters:
        `input1` - input 1
        `output` - output
      Returns:
        instructions as string

    - #### getInstructions

          public String getInstructions(String input1,
                                        String input2,
                                        String output)

      Description copied from class: `Lop`
      Method should be overridden if needed
      Overrides:
        `getInstructions` in class `Lop`
      Parameters:
        `input1` - input 1
        `input2` - input 2
        `output` - output
      Returns:
        instructions as string

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