A high-performance general-purpose compute library

- Main Page
- Tutorials
- Release Notes
- Examples

Namespaces | Functions
arith.h File Reference
`#include <af/defines.h>`

Go to the source code of this file.

## Namespaces
namespace | af

## Functions
array | min (const array &lhs, const array &rhs)
| C++ Interface to find the elementwise minimum between two arrays.
array | min (const array &lhs, const double rhs)
| C++ Interface to find the elementwise minimum between an array and a scalar value.
array | min (const double lhs, const array &rhs)
| C++ Interface to find the elementwise minimum between an array and a scalar value.
array | max (const array &lhs, const array &rhs)
| C++ Interface to find the elementwise maximum between two arrays.
array | max (const array &lhs, const double rhs)
| C++ Interface to find the elementwise maximum between an array and a scalar value.
array | max (const double lhs, const array &rhs)
| C++ Interface to find the elementwise maximum between an array and a scalar value.
array | abs (const array &in)
| C++ Interface to calculate the absolute value.
array | arg (const array &in)
| C++ Interface to calculate the phase angle (in radians) of a complex array.
array | sign (const array &in)
| C++ Interface to return the sign of elements in an array.
array | round (const array &in)
| C++ Interface to round numbers.
array | trunc (const array &in)
| C++ Interface to truncate numbers.
array | floor (const array &in)
| C++ Interface to floor numbers.
array | ceil (const array &in)
| C++ Interface to ceil numbers.
array | sin (const array &in)
| C++ Interface to evaluate the sine function.
array | cos (const array &in)
| C++ Interface to evaluate the cosine function.
array | tan (const array &in)
| C++ Interface to evaluate the tangent function.
array | asin (const array &in)
| C++ Interface to evaluate the inverse sine function.
array | acos (const array &in)
| C++ Interface to evaluate the inverse cosine function.
array | atan (const array &in)
| C++ Interface to evaluate the inverse tangent function.
array | sinh (const array &in)
| C++ Interface to evaluate the hyperbolic sine function.
array | cosh (const array &in)
| C++ Interface to evaluate the hyperbolic cosine function.
array | tanh (const array &in)
| C++ Interface to evaluate the hyperbolic tangent function.
array | asinh (const array &in)
| C++ Interface to evaluate the inverse hyperbolic sine function.
array | acosh (const array &in)
| C++ Interface to evaluate the inverse hyperbolic cosine function.
array | atanh (const array &in)
| C++ Interface to evaluate the inverse hyperbolic tangent function.
array | real (const array &in)
| C++ Interface to return the real part of a complex array.
array | imag (const array &in)
| C++ Interface to return the imaginary part of a complex array.
array | conjg (const array &in)
| C++ Interface to calculate the complex conjugate of an input array.
array | root (const array &nth_root, const array &value)
| C++ Interface to evaluate the nth root.
array | root (const array &nth_root, const double value)
| C++ Interface to evaluate the nth root.
array | root (const double nth_root, const array &value)
| C++ Interface to evaluate the nth root.
array | sigmoid (const array &in)
| C++ Interface to evaluate the logistical sigmoid function.
array | exp (const array &in)
| C++ Interface to evaluate the exponential.
array | expm1 (const array &in)
| C++ Interface to evaluate the exponential of an array minus 1, `exp(in) - 1`.
array | erf (const array &in)
| C++ Interface to evaluate the error function.
array | erfc (const array &in)
| C++ Interface to evaluate the complementary error function.
array | log (const array &in)
| C++ Interface to evaluate the natural logarithm.
array | log1p (const array &in)
| C++ Interface to evaluate the natural logarithm of 1 + input, `ln(1+in)`.
array | log10 (const array &in)
| C++ Interface to evaluate the base 10 logarithm.
array | log2 (const array &in)
| C++ Interface to evaluate the base 2 logarithm.
array | sqrt (const array &in)
| C++ Interface to evaluate the square root.
array | rsqrt (const array &in)
| C++ Interface to evaluate the reciprocal square root.
array | cbrt (const array &in)
| C++ Interface to evaluate the cube root.
array | factorial (const array &in)
| C++ Interface to calculate the factorial.
array | tgamma (const array &in)
| C++ Interface to evaluate the gamma function.
array | lgamma (const array &in)
| C++ Interface to evaluate the logarithm of the absolute value of the gamma function.
array | iszero (const array &in)
| C++ Interface to check which values are zero.
array | isInf (const array &in)
| C++ Interface to check if values are infinite.
array | isNaN (const array &in)
| C++ Interface to check if values are NaN.
af_err | af_add (af_array *out, const af_array lhs, const af_array rhs, const bool batch)
| C Interface to add two arrays.
af_err | af_sub (af_array *out, const af_array lhs, const af_array rhs, const bool batch)
| C Interface to subtract one array from another array.
af_err | af_mul (af_array *out, const af_array lhs, const af_array rhs, const bool batch)
| C Interface to multiply two arrays.
af_err | af_div (af_array *out, const af_array lhs, const af_array rhs, const bool batch)
| C Interface to divide one array by another array.
af_err | af_lt (af_array *out, const af_array lhs, const af_array rhs, const bool batch)
| C Interface to perform a less-than comparison between corresponding elements of two arrays.
af_err | af_gt (af_array *out, const af_array lhs, const af_array rhs, const bool batch)
| C Interface to perform a greater-than comparison between corresponding elements of two arrays.
af_err | af_le (af_array *out, const af_array lhs, const af_array rhs, const bool batch)
| C Interface to perform a less-than-or-equal comparison between corresponding elements of two arrays.
af_err | af_ge (af_array *out, const af_array lhs, const af_array rhs, const bool batch)
| C Interface to perform a greater-than-or-equal comparison between corresponding elements of two arrays.
af_err | af_eq (af_array *out, const af_array lhs, const af_array rhs, const bool batch)
| C Interface to check if corresponding elements of two arrays are equal.
af_err | af_neq (af_array *out, const af_array lhs, const af_array rhs, const bool batch)
| C Interface to check if corresponding elements of two arrays are not equal.
af_err | af_and (af_array *out, const af_array lhs, const af_array rhs, const bool batch)
| C Interface to evaluate the logical AND of two arrays.
af_err | af_or (af_array *out, const af_array lhs, const af_array rhs, const bool batch)
| C Interface the evaluate the logical OR of two arrays.
af_err | af_not (af_array *out, const af_array in)
| C Interface to evaluate the logical NOT of an array.
af_err | af_bitnot (af_array *out, const af_array in)
| C Interface to evaluate the bitwise NOT of an array.
af_err | af_bitand (af_array *out, const af_array lhs, const af_array rhs, const bool batch)
| C Interface to evaluate the bitwise AND of two arrays.
af_err | af_bitor (af_array *out, const af_array lhs, const af_array rhs, const bool batch)
| C Interface to evaluate the bitwise OR of two arrays.
af_err | af_bitxor (af_array *out, const af_array lhs, const af_array rhs, const bool batch)
| C Interface to evaluate the bitwise XOR of two arrays.
af_err | af_bitshiftl (af_array *out, const af_array lhs, const af_array rhs, const bool batch)
| C Interface to shift the bits of integer arrays left.
af_err | af_bitshiftr (af_array *out, const af_array lhs, const af_array rhs, const bool batch)
| C Interface to shift the bits of integer arrays right.
af_err | af_cast (af_array *out, const af_array in, const af_dtype type)
| C Interface to cast an array from one type to another.
af_err | af_minof (af_array *out, const af_array lhs, const af_array rhs, const bool batch)
| C Interface to find the elementwise minimum between two arrays.
af_err | af_maxof (af_array *out, const af_array lhs, const af_array rhs, const bool batch)
| C Interface to find the elementwise minimum between an array and a scalar value.
af_err | af_clamp (af_array *out, const af_array in, const af_array lo, const af_array hi, const bool batch)
| C Interface to clamp an array between an upper and a lower limit.
af_err | af_rem (af_array *out, const af_array lhs, const af_array rhs, const bool batch)
| C Interface to calculate the remainder.
af_err | af_mod (af_array *out, const af_array lhs, const af_array rhs, const bool batch)
| C Interface to calculate the modulus.
af_err | af_abs (af_array *out, const af_array in)
| C Interface to calculate the absolute value.
af_err | af_arg (af_array *out, const af_array in)
| C Interface to calculate the phase angle (in radians) of a complex array.
af_err | af_sign (af_array *out, const af_array in)
| C Interface to calculate the sign of elements in an array.
af_err | af_round (af_array *out, const af_array in)
| C Interface to round numbers.
af_err | af_trunc (af_array *out, const af_array in)
| C Interface to truncate numbers.
af_err | af_floor (af_array *out, const af_array in)
| C Interface to floor numbers.
af_err | af_ceil (af_array *out, const af_array in)
| C Interface to ceil numbers.
af_err | af_hypot (af_array *out, const af_array lhs, const af_array rhs, const bool batch)
| C Interface to calculate the length of the hypotenuse of two inputs.
af_err | af_sin (af_array *out, const af_array in)
| C Interface to evaluate the sine function.
af_err | af_cos (af_array *out, const af_array in)
| C Interface to evaluate the cosine function.
af_err | af_tan (af_array *out, const af_array in)
| C Interface to evaluate the tangent function.
af_err | af_asin (af_array *out, const af_array in)
| C Interface to evaluate the inverse sine function.
af_err | af_acos (af_array *out, const af_array in)
| C Interface to evaluate the inverse cosine function.
af_err | af_atan (af_array *out, const af_array in)
| C Interface to evaluate the inverse tangent function.
af_err | af_atan2 (af_array *out, const af_array lhs, const af_array rhs, const bool batch)
| C Interface to evaluate the inverse tangent of two arrays.
af_err | af_sinh (af_array *out, const af_array in)
| C Interface to evaluate the hyperbolic sine function.
af_err | af_cosh (af_array *out, const af_array in)
| C Interface to evaluate the hyperbolic cosine function.
af_err | af_tanh (af_array *out, const af_array in)
| C Interface to evaluate the hyperbolic tangent function.
af_err | af_asinh (af_array *out, const af_array in)
| C Interface to evaluate the inverse hyperbolic sine function.
af_err | af_acosh (af_array *out, const af_array in)
| C Interface to evaluate the inverse hyperbolic cosine function.
af_err | af_atanh (af_array *out, const af_array in)
| C Interface to evaluate the inverse hyperbolic tangent function.
af_err | af_cplx (af_array *out, const af_array in)
| C Interface to create a complex array from a single real array.
af_err | af_cplx2 (af_array *out, const af_array real, const af_array imag, const bool batch)
| C Interface to create a complex array from two real arrays.
af_err | af_real (af_array *out, const af_array in)
| C Interface to return the real part of a complex array.
af_err | af_imag (af_array *out, const af_array in)
| C Interface to return the imaginary part of a complex array.
af_err | af_conjg (af_array *out, const af_array in)
| C Interface to evaluate the complex conjugate of an input array.
af_err | af_root (af_array *out, const af_array lhs, const af_array rhs, const bool batch)
| C Interface to evaluate the nth root.
af_err | af_pow (af_array *out, const af_array lhs, const af_array rhs, const bool batch)
| C Interface to raise a base to a power (or exponent).
af_err | af_pow2 (af_array *out, const af_array in)
| C Interface to raise 2 to a power (or exponent).
af_err | af_sigmoid (af_array *out, const af_array in)
| C Interface to evaluate the logistical sigmoid function.
af_err | af_exp (af_array *out, const af_array in)
| C Interface to evaluate the exponential.
af_err | af_expm1 (af_array *out, const af_array in)
| C Interface to evaluate the exponential of an array minus 1, `exp(in) - 1`.
af_err | af_erf (af_array *out, const af_array in)
| C Interface to evaluate the error function.
af_err | af_erfc (af_array *out, const af_array in)
| C Interface to evaluate the complementary error function.
af_err | af_log (af_array *out, const af_array in)
| C Interface to evaluate the natural logarithm.
af_err | af_log1p (af_array *out, const af_array in)
| C Interface to evaluate the natural logarithm of 1 + input, `ln(1+in)`.
af_err | af_log10 (af_array *out, const af_array in)
| C Interface to evaluate the base 10 logarithm.
af_err | af_log2 (af_array *out, const af_array in)
| C Interface to evaluate the base 2 logarithm.
af_err | af_sqrt (af_array *out, const af_array in)
| C Interface to evaluate the square root.
af_err | af_rsqrt (af_array *out, const af_array in)
| C Interface to evaluate the reciprocal square root.
af_err | af_cbrt (af_array *out, const af_array in)
| C Interface to evaluate the cube root.
af_err | af_factorial (af_array *out, const af_array in)
| C Interface to calculate the factorial.
af_err | af_tgamma (af_array *out, const af_array in)
| C Interface to evaluate the gamma function.
af_err | af_lgamma (af_array *out, const af_array in)
| C Interface to evaluate the logarithm of the absolute value of the gamma function.
af_err | af_iszero (af_array *out, const af_array in)
| C Interface to check if values are zero.
af_err | af_isinf (af_array *out, const af_array in)
| C Interface to check if values are infinite.
af_err | af_isnan (af_array *out, const af_array in)
| C Interface to check if values are NaN.
array | clamp (const array &in, const array &lo, const array &hi)
array | clamp (const array &in, const array &lo, const double hi)
array | clamp (const array &in, const double lo, const array &hi)
array | clamp (const array &in, const double lo, const double hi)
array | rem (const array &lhs, const array &rhs)
array | rem (const array &lhs, const double rhs)
array | rem (const double lhs, const array &rhs)
array | mod (const array &lhs, const array &rhs)
array | mod (const array &lhs, const double rhs)
array | mod (const double lhs, const array &rhs)
array | hypot (const array &lhs, const array &rhs)
| C++ Interface to calculate the length of the hypotenuse of two inputs.
array | hypot (const array &lhs, const double rhs)
| C++ Interface to calculate the length of the hypotenuse of two inputs.
array | hypot (const double lhs, const array &rhs)
| C++ Interface to calculate the length of the hypotenuse of two inputs.
array | atan2 (const array &lhs, const array &rhs)
| C++ Interface to evaluate the inverse tangent of two arrays.
array | atan2 (const array &lhs, const double rhs)
| C++ Interface to evaluate the inverse tangent of two arrays.
array | atan2 (const double lhs, const array &rhs)
| C++ Interface to evaluate the inverse tangent of two arrays.
array | complex (const array &in)
| C++ Interface to create a complex array from a single real array.
array | complex (const array &real_, const array &imag_)
| C++ Interface to create a complex array from two real arrays.
array | complex (const array &real_, const double imag_)
| C++ Interface to create a complex array from a single real array for the real component and a single scalar for each imaginary component.
array | complex (const double real_, const array &imag_)
| C++ Interface to create a complex array from a single scalar for each real component and a single real array for the imaginary component.
array | pow (const array &base, const array &exponent)
| C++ Interface to raise a base to a power (or exponent).
array | pow (const array &base, const double exponent)
| C++ Interface to raise a base to a power (or exponent).
array | pow (const double base, const array &exponent)
| C++ Interface to raise a base to a power (or exponent).
array | pow2 (const array &in)
| C++ Interface to raise 2 to a power (or exponent).

## Function Documentation

## ◆ af_log2()

af_err af_log2 | ( | af_array * | out,
|  | const af_array | in )

C Interface to evaluate the base 2 logarithm.

Parameters

  [out] | out | base 2 logarithm
  [in] | in | input array

Returns
  AF_SUCCESS, if function returns successfully, else an af_err code is given

## ◆ af_lt()

af_err af_lt | ( | af_array * | out,
|  | const af_array | lhs,
|  | const af_array | rhs,
|  | const bool | batch )

C Interface to perform a less-than comparison between corresponding elements of two arrays.

Output type is b8.

Parameters

  [out] | out | 1's where `lhs < rhs`, else 0's
  [in] | lhs | first input
  [in] | rhs | second input
  [in] | batch | batch mode

Returns
  AF_SUCCESS, if function returns successfully, else an af_err code is given