Files
openvino/docs/ops/arithmetic/FloorMod_1.md
2023-04-28 08:47:50 +02:00

2.8 KiB

FloorMod

@sphinxdirective

Versioned name: FloorMod-1

Category: Arithmetic binary

Short description: FloorMod performs an element-wise floor modulo operation with two given tensors applying broadcasting rule specified in the auto_broadcast attribute.

Detailed description: As a first step input tensors a and b are broadcasted if their shapes differ. Broadcasting is performed according to auto_broadcast attribute specification. As a second step FloorMod operation is computed element-wise on the input tensors a and b according to the formula below:

.. math::

o_{i} = a_{i} \mod b_{i}

FloorMod operation computes a reminder of a floored division. It is the same behavior like in Python programming language: :math:floor(x / y) * y + floor\_mod(x, y) = x. The sign of the result is equal to a sign of a divisor. The result of division by zero is undefined.

Attributes:

  • auto_broadcast

    • Description: specifies rules used for auto-broadcasting of input tensors.

    • Range of values:

      • none - no auto-broadcasting is allowed, all input shapes must match
      • numpy - numpy broadcasting rules, description is available in :doc:Broadcast Rules For Elementwise Operations <openvino_docs_ops_broadcast_rules>
    • Type: string

    • Default value: "numpy"

    • Required: no

Inputs

  • 1: A tensor of type T and arbitrary shape. Required.
  • 2: A tensor of type T and arbitrary shape. Required.

Outputs

  • 1: The result of element-wise floor modulo operation. A tensor of type T with shape equal to broadcasted shape of two inputs.

Types

  • T: any numeric type.

Examples

Example 1 - no broadcasting

.. code-block::

<layer ... type="FloorMod"> 256 56 256 56 256 56

Example 2: numpy broadcasting

.. code-block:: cpp

<layer ... type="FloorMod"> 8 1 6 1 7 1 5 8 7 6 5

@endsphinxdirective