| ArrayFire Classes | |
| ►ArrayFire Functions | |
| abs | Calculate the absolute value |
| accum | Evaluate the cumulative sum (inclusive) along a given dimension |
| acos | Evaluate the inverse cosine function (arc cosine) |
| acosh | Evaluate the inverse hyperbolic cosine function (area hyperbolic cosine) |
| add | Elementwise addition |
| allTrue | Check if all values along a given dimension are true |
| allTrueByKey | Check if all values along a given dimension are true, according to an array of keys |
| allocHost | Allocate memory on host |
| allocV2 | Allocate memory using the ArrayFire memory manager |
| and | Evaluate the logical AND of two arrays |
| anisotropicDiffusion | Anisotropic Smoothing Filter |
| anyTrueByKey | Check if any values along a given dimension are true, according to an array of keys |
| anytrue | Check if any values along a given dimension are true |
| approx1 | Interpolation across a single dimension |
| approx2 | Interpolation along two dimensions |
| arg | Calculate the phase angle (in radians) of a complex array |
| asin | Evaluate the inverse sine function (arc sine) |
| asinh | Evaluate the inverse hyperbolic sine function (area hyperbolic sine) |
| assign | Copy and write values in the locations specified by the sequences |
| atan/atan2 | Evaluate the inverse tangent function (arc tangent) |
| atanh | Evaluate the inverse hyperbolic tangent function (area hyperbolic tangent) |
| bilateral | Bilateral Filter |
| bitand | Evaluate the bitwise AND of two arrays |
| bitnot | Evaluate the bitwise NOT of an array |
| bitor | Evaluate the bitwise OR of two arrays |
| bitshiftl | Shift the bits of integer arrays left |
| bitshiftr | Shift the bits of integer arrays right |
| bitxor | Evaluate the bitwise XOR of two arrays |
| canny | Canny Edge Detector |
| cast | Cast an array from one type to another |
| cbrt | Evaluate the cube root |
| ceil | Rounds up to the least integer greater than or equal to x |
| cholesky | Perform Cholesky decomposition |
| clamp | Clamp an array between an upper and a lower limit |
| col/cols | Gets a reference of a col in a 2D af::array |
| colorSpace | Colorspace conversion function |
| complex | Create complex arrays |
| confidenceCC | Segment image based on similar pixel characteristics |
| conjg | Evaluate the complex conjugate of an input array |
| constant | Create an array from a scalar input value |
| convolve (Non-separable) | Convolution Integral for any(one through three) dimensional data |
| convolve (Separable) | Separable Convolution |
| convolve1 | Convolution Integral for one dimensional data |
| convolve2 | Convolution Integral for two dimensional data |
| convolve3 | Convolution Integral for three dimensional data |
| corrcoef | Find the correlation coefficient of values in the input |
| cos | Evaluate the cosine function |
| cosh | Evaluate the hyperbolic cosine function |
| count | Count non-zero values in an array along a given dimension |
| countByKey | Count non-zero values in an array, according to an array of keys |
| cov | Find the covariance of values in the input |
| deleteImageMem | Delete memory created by saveImageMem and af_save_image_memory function |
| dense | Returns a dense array from a sparse input |
| det | Find the determinant of a matrix |
| deviceInfo | Gets the information about device and platform as strings |
| deviceMemInfo | Memory manager related functions |
| diag | Extract the diagonal from an array |
| diff1 | Calculate the first order difference in an array over a given dimension |
| diff2 | Calculate the second order difference in an array over a given dimension |
| dilate | Dilation(morphological operator) for images |
| dilate3d | Dilation(morphological operator) for volumes |
| div | Elementwise division |
| dog | Difference of Gaussians |
| dot | Compute the dot product |
| eq | Equal to, an elementwise comparison of two arrays |
| erf | Evaluate the error function |
| erfc | Evaluate the complementary error function |
| erode | Erosion(morphological operator) for images |
| erode3d | Erosion(morphological operator) for volumes |
| exp | Evaluate the exponential function |
| expm1 | Evaluate the exponential function of an array minus 1, exp(in) - 1 |
| factorial | Evaluate the factorial |
| fast | FAST feature detector |
| features | Lookup values of an array based on sequences and/or arrays |
| fft | Fast Fourier Transform |
| fft2 | Fast Fourier Transform |
| fft3 | Fast Fourier Transform |
| fftC2R | Complex to Real Fast Fourier Transform |
| fftR2C | Real to Complex Fast Fourier Transform |
| fir | This function implements a Finite Impulse Filter |
| flat | Flatten an array |
| flip | Flip the input along a specified dimension |
| floor | Rounds down to the greatest integer less than or equal to x |
| freeHost | Free memory allocated on host internally by ArrayFire |
| freePinned | Free pinned memory allocated by ArrayFire's memory manager |
| freeV2 | Returns memory to ArrayFire's memory manager |
| gaussiankernel | Creates a Gaussian Kernel |
| ge | Greater than or equal to, an elementwise comparison of two arrays |
| getActiveBackend | Get's the backend enum for the active backend |
| getAvailableBackends | Returns an integer indicating the backends loaded successfully |
| getBackendCount | Get the number of backends whose libraries were successfully loaded |
| getBackendId | Get's the backend enum for an array |
| getDefaultRandomEngine | Returns the default random engine object |
| getDevice | Get the current device ID |
| getDeviceCount | Gets the number of compute devices on the system |
| getDeviceId | Get's the id of the device an array was created on |
| getSeed | Returns the seed for random number generation |
| gloh | SIFT feature detector and GLOH descriptor extractor |
| grad | Calculate the gradients of the input |
| gray2rgb | Grayscale to RGB colorspace converter |
| gt | Greater than comparison, an elementwise comparison of two arrays |
| hammingMatcher | Hamming Matcher |
| harris | Harris corner detector |
| histequal | Histogram equalization of input image |
| histogram | Histogram of input data |
| homography | Homography Estimation |
| hsv2rgb | HSV to RGB colorspace converter |
| hypot | Evaluate the length of the hypotenuse of two inputs |
| identity | Generate an identity matrix |
| ifft | Fast Fourier Transform |
| ifft2 | Fast Fourier Transform |
| ifft3 | Fast Fourier Transform |
| iir | This function implements a Infinite Impulse Filter |
| imag | Returns the imaginary part of a complex array |
| index | Lookup values of an array based on sequences and/or arrays |
| info | Display ArrayFire and device info |
| infoString | Get af::info() as a string |
| inverse | Invert a matrix |
| inverseDeconv | Inverse Deconvolution |
| iota | Generate an array with [0, n-1] values modified to specified dimensions and tiling |
| isDoubleAvailable | Check if double precision support is available for specified device |
| isHalfAvailable | Check if half(16-bit) precision floating point support is available for specified device |
| isImageIoAvailable | Returns true if ArrayFire was compiled with ImageIO (FreeImage) support |
| isLAPACKAvailable | Returns true if ArrayFire is compiled with LAPACK support |
| isinf | Check if values are infinite |
| isnan | Check if values are NaN |
| iszero | Check if values are zero |
| iterativeDeconv | Iterative Deconvolution |
| join | Join up to 4 arrays along specified dimension |
| le | Less than or equal to, an elementwise comparison of two arrays |
| lgamma | Evaluate the logarithm of the absolute value of the gamma function |
| loadImage | Load an image from disk to an array |
| loadImageMem | Load an image from memory which is stored as a FreeImage stream (FIMEMORY) |
| log | Evaluate the natural logarithm |
| log10 | Evaluate the base 10 logarithm |
| log1p | Evaluate the natural logarithm of 1 + input, ln(1+in) |
| log2 | Evaluate the base 2 logarithm |
| lookup | Lookup values of an array by indexing with another array |
| lower | Return the lower triangular matrix from an input array |
| lt | Less than, an elementwise comparison of two arrays |
| lu | Perform LU decomposition |
| matchTemplate | Template Matching |
| matmul | Matrix multiplication |
| max | Returns the elementwise maximum between two arrays |
| max | Return the maximum along a given dimension |
| maxByKey | Return the maximum along a given dimension, according to an array of keys |
| maxfilt | Find maximum value from a window |
| mean | Find the mean of values in the input |
| meanshift | Meanshift Filter |
| medfilt | Median Filter |
| median | Find the median of values in the input |
| min | Returns the elementwise minimum between two arrays |
| min | Return the minimum along a given dimension |
| minByKey | Return the minimum along a given dimension, according to an array of keys |
| minfilt | Find minimum value from a window |
| mod | Calculate the modulus |
| moddims | Modify the dimensions of an array without changing the order of its elements |
| moments | The af::moments() function allows for finding different properties of image regions |
| mul | Elementwise multiply |
| nearestNeighbour | Determine the nearest neighbouring points to a given set of points |
| neg | Negate an array |
| neq | Not equal to, an elementwise comparison of two arrays |
| norm | Find the norm of a matrix |
| not | Evaluate the logical NOT of an array |
| operator() | Gets a reference to a set of elements |
| operator(star)= | Multiplies and assigns the value(s) of val to the elements of the af::array |
| operator+= | Adds and assigns the value(s) of val to the elements of the af::array |
| operator-= | Subtracts and assigns the value(s) of val to the elements of the af::array |
| operator/= | Divides and assigns the value(s) of val to the elements of the af::array |
| operator= | Assignes the value(s) of val to the elements of the af::array |
| or | Evaluate the logical OR of two arrays |
| orb | ORB Feature descriptor |
| pad | Pad an array |
| pinned | Allocate pinned memory using ArrayFire's memory manager |
| pinverse | Pseudo-invert (Moore-Penrose) a matrix |
| pow | Raise a base to a power (or exponent) |
| pow2 | Raise 2 to a power (or exponent) |
| print | Print the array to screen |
| product | Multiply array elements over a given dimension |
| productByKey | Multiply array elements over a given dimension, according to an array of keys |
| qr | Perform QR decomposition |
| randn | Create a random array sampled from normal distribution |
| randomEngine | Functions to create, modify, use, and destroy randomEngine objects |
| randu | Create a random array sampled from uniform distribution |
| range | Generate an array with [0, n-1] values along the a specified dimension and tiled across other dimensions |
| rank | Find the rank of a matrix |
| readArray | Load an array from a file |
| real | Returns the real part of a complex array |
| regions | Find blobs in given image |
| rem | Calculate the remainder of a division |
| reorder | Reorder an array |
| replace | Replace elements of an array with elements of another array |
| resize | Resize an input image |
| rgb2gray | RGB to Grayscale colorspace converter |
| rgb2hsv | RGB to HSV colorspace converter |
| rgb2ycbcr | RGB to YCbCr colorspace converter |
| root | Evaluate the nth root |
| rotate | Rotate an input image or array |
| round | Round numbers to the nearest integer |
| row/rows | Gets a reference of a row in a 2D af::array |
| rsqrt | Evaluate the reciprocal square root |
| sat | Summed Area Tables |
| saveArray | Save an array to a binary file |
| saveImage | Save an array to disk as an image |
| saveImageMem | Save an array to memory as an image using FreeImage stream (FIMEMORY) |
| scale | Scale an input image |
| scan | Scan an array (generalized) over a given dimension |
| scanByKey | Scan an array (generalized) over a given dimension, according to an array of keys |
| select | Select elements based on a conditional array |
| setBackend | Set the current backend when using Unified backend |
| setDefaultRandomEngineType | Set the default random engine type |
| setDevice | Change current device to specified device |
| setSeed | Set the seed for random number generation |
| setintersect | Evaluate the intersection of two arrays |
| setunion | Evaluate the union of two arrays |
| setunique | Return the unique values in an array |
| shift | Shift an array |
| sift | SIFT feature detector and descriptor extractor |
| sigmoid | Evaluate the logistical sigmoid function |
| sign | Return the sign of elements in an array |
| sin | Evaluate the sine function |
| sinh | Evaluate the hyperbolic sine function |
| skew | Skew an input image |
| slice/slices | Gets a reference of a matrix in a 3D af::array |
| sobel | Sobel Operators |
| solve | Solve a system of equations |
| solveLU | Solve a system of equations |
| sort | Sort an array over a given dimension |
| sortByKey | Sort an array over a given dimension, according to an array of keys |
| sortIndex | Sort an array over a given dimension and return the original indices |
| sparse | Create a sparse array |
| sparseConvertTo | Convert an existing sparse array into a different storage format |
| sparseGetColdx | Returns reference to the column indices component of the sparse array |
| sparseGetInfo | Returns reference to components of the input sparse array |
| sparseGetNNZ | Returns the number of non zero elements in the sparse array |
| sparseGetRowIdx | Returns reference to the row indices component of the sparse array |
| sparseGetStorage | Returns the storage type of a sparse array |
| sparseGetValues | Returns reference to the values component of the sparse array |
| sqrt | Evaluate the square root |
| stdev | Find the standard deviation of values in the input |
| sub | Elementwise subtraction |
| sum | Sum array elements over a given dimension |
| sumByKey | Sum array elements over a given dimension, according to an array of keys |
| susan | SUSAN corner detector |
| svd | Perform singular value decomposition |
| sync | Blocks until all operations on device are finished |
| tan | Evaluate the tangent function |
| tanh | Evaluate the hyperbolic tangent function |
| tgamma | Evaluate the gamma function |
| tile | Generate a tiled array by repeating an array's contents along a specified dimension |
| toString | Print the array to a string instead of the screen |
| topk | This function returns the top k values along a given dimension of the input array |
| transform | Transform an input image |
| transformCoordinates | Transform input coordinates |
| translate | Translate an input image |
| transpose | Transpose a matrix |
| trunc | Truncate numbers to nearest integer |
| unwrap | Rearrange windowed sections of an array into columns (or rows) |
| upper | Return the upper triangular matrix from an input array |
| var | Find the variance of values in the input |
| where | Locate the indices of the non-zero values in an array |
| wrap | Performs the opposite of af::unwrap() |
| ycbcr2rgb | YCbCr to RGB colorspace converter |
| ►ArrayFire Functions by Category | |
| ►Computer Vision | A list of computer vision algorithms |
| ►Feature descriptors | ORB feature descriptor |
| gloh | SIFT feature detector and GLOH descriptor extractor |
| orb | ORB Feature descriptor |
| sift | SIFT feature detector and descriptor extractor |
| ►Feature detectors | FAST feature detector |
| dog | Difference of Gaussians |
| fast | FAST feature detector |
| harris | Harris corner detector |
| susan | SUSAN corner detector |
| ►Feature matchers | Feature matchers |
| hammingMatcher | Hamming Matcher |
| nearestNeighbour | Determine the nearest neighbouring points to a given set of points |
| ►Template matching | |
| matchTemplate | Template Matching |
| ►Events | Managing ArrayFire Events which allows manipulation of operations on computation queues |
| Event API | Af_create_event, af_mark_event, etc |
| ►Functions to create and modify Arrays | Array constructors, random number generation, transpose, indexing, etc |
| ►Assignment & Indexing operation on arrays | Access sub regions of an array object |
| assign | Copy and write values in the locations specified by the sequences |
| col/cols | Gets a reference of a col in a 2D af::array |
| index | Lookup values of an array based on sequences and/or arrays |
| lookup | Lookup values of an array by indexing with another array |
| operator() | Gets a reference to a set of elements |
| operator(star)= | Multiplies and assigns the value(s) of val to the elements of the af::array |
| operator+= | Adds and assigns the value(s) of val to the elements of the af::array |
| operator-= | Subtracts and assigns the value(s) of val to the elements of the af::array |
| operator/= | Divides and assigns the value(s) of val to the elements of the af::array |
| operator= | Assignes the value(s) of val to the elements of the af::array |
| row/rows | Gets a reference of a row in a 2D af::array |
| slice/slices | Gets a reference of a matrix in a 3D af::array |
| C API to manage arrays | Create, release, copy, fetch-properties of af_array |
| ►Functions to create arrays. | Constant, random, range, etc |
| ►Random Number Generation | Random Number Generation Functions |
| getDefaultRandomEngine | Returns the default random engine object |
| getSeed | Returns the seed for random number generation |
| randn | Create a random array sampled from normal distribution |
| randomEngine | Functions to create, modify, use, and destroy randomEngine objects |
| randu | Create a random array sampled from uniform distribution |
| setDefaultRandomEngineType | Set the default random engine type |
| setSeed | Set the seed for random number generation |
| constant | Create an array from a scalar input value |
| diag | Extract the diagonal from an array |
| identity | Generate an identity matrix |
| iota | Generate an array with [0, n-1] values modified to specified dimensions and tiling |
| lower | Return the lower triangular matrix from an input array |
| pad | Pad an array |
| range | Generate an array with [0, n-1] values along the a specified dimension and tiled across other dimensions |
| upper | Return the upper triangular matrix from an input array |
| ►Helper functions for arrays | Iszero, isInf, isNan, etc |
| cast | Cast an array from one type to another |
| isinf | Check if values are infinite |
| isnan | Check if values are NaN |
| iszero | Check if values are zero |
| ►Managing devices in ArrayFire | Getting device pointer, allocating and freeing memory |
| allocHost | Allocate memory on host |
| allocV2 | Allocate memory using the ArrayFire memory manager |
| deviceInfo | Gets the information about device and platform as strings |
| deviceMemInfo | Memory manager related functions |
| freeHost | Free memory allocated on host internally by ArrayFire |
| freePinned | Free pinned memory allocated by ArrayFire's memory manager |
| freeV2 | Returns memory to ArrayFire's memory manager |
| getDevice | Get the current device ID |
| getDeviceCount | Gets the number of compute devices on the system |
| info | Display ArrayFire and device info |
| infoString | Get af::info() as a string |
| isDoubleAvailable | Check if double precision support is available for specified device |
| isHalfAvailable | Check if half(16-bit) precision floating point support is available for specified device |
| pinned | Allocate pinned memory using ArrayFire's memory manager |
| setDevice | Change current device to specified device |
| sync | Blocks until all operations on device are finished |
| ►Move and Reorder array content | Reorder, transpose, flip, join, tile, etc |
| flat | Flatten an array |
| flip | Flip the input along a specified dimension |
| join | Join up to 4 arrays along specified dimension |
| moddims | Modify the dimensions of an array without changing the order of its elements |
| reorder | Reorder an array |
| replace | Replace elements of an array with elements of another array |
| select | Select elements based on a conditional array |
| shift | Shift an array |
| tile | Generate a tiled array by repeating an array's contents along a specified dimension |
| transpose | Transpose a matrix |
| ►Functions to work with internal array layout | Functions to work with arrayfire's internal data structure |
| createStridedArray | Create an array with specified strides and offset |
| getOffset | Get Offset of the underlying data |
| getStrides | Get strides of underlying data |
| isLinear | Check if all elements in array are contiguous |
| isOwner | Check if underlying data is owned by the current array |
| ►Image Processing | Image filtering, morphing and transformations |
| ►Colorspace conversions | RGB to gray, gray to RGB, RGB to HSV, etc |
| colorSpace | Colorspace conversion function |
| gray2rgb | Grayscale to RGB colorspace converter |
| hsv2rgb | HSV to RGB colorspace converter |
| rgb2gray | RGB to Grayscale colorspace converter |
| rgb2hsv | RGB to HSV colorspace converter |
| rgb2ycbcr | RGB to YCbCr colorspace converter |
| ycbcr2rgb | YCbCr to RGB colorspace converter |
| ►Connected Components & Labeling | Regions |
| confidenceCC | Segment image based on similar pixel characteristics |
| regions | Find blobs in given image |
| ►Filters | Bilateral, sobel, mean shift, median / min / max filters etc |
| anisotropicDiffusion | Anisotropic Smoothing Filter |
| bilateral | Bilateral Filter |
| canny | Canny Edge Detector |
| inverseDeconv | Inverse Deconvolution |
| iterativeDeconv | Iterative Deconvolution |
| maxfilt | Find maximum value from a window |
| meanshift | Meanshift Filter |
| medfilt | Median Filter |
| minfilt | Find minimum value from a window |
| sat | Summed Area Tables |
| sobel | Sobel Operators |
| ►Histograms | Image and data histograms |
| histequal | Histogram equalization of input image |
| histogram | Histogram of input data |
| ►Image moments | Centroids, areas, etc |
| moments | The af::moments() function allows for finding different properties of image regions |
| ►Image transformations | Rotate, skew, etc |
| resize | Resize an input image |
| rotate | Rotate an input image or array |
| scale | Scale an input image |
| skew | Skew an input image |
| transform | Transform an input image |
| transformCoordinates | Transform input coordinates |
| translate | Translate an input image |
| ►Morphological Operations | Erode, dilate, etc |
| dilate | Dilation(morphological operator) for images |
| dilate3d | Dilation(morphological operator) for volumes |
| erode | Erosion(morphological operator) for images |
| erode3d | Erosion(morphological operator) for volumes |
| ►Utility Functions | LoadImage, saveImage, gaussianKernel |
| gaussiankernel | Creates a Gaussian Kernel |
| ►Wrapping and unwrapping image windows | Wrap, unwrap, etc |
| unwrap | Rearrange windowed sections of an array into columns (or rows) |
| wrap | Performs the opposite of af::unwrap() |
| ►Input and Output functions | Functions to read and write data |
| ►Reading and writing arrays | Printing data to screen / files |
| readArray | Load an array from a file |
| saveArray | Save an array to a binary file |
| ►Reading and writing images | Reading and writing images |
| deleteImageMem | Delete memory created by saveImageMem and af_save_image_memory function |
| isImageIoAvailable | Returns true if ArrayFire was compiled with ImageIO (FreeImage) support |
| loadImage | Load an image from disk to an array |
| loadImageMem | Load an image from memory which is stored as a FreeImage stream (FIMEMORY) |
| saveImage | Save an array to disk as an image |
| saveImageMem | Save an array to memory as an image using FreeImage stream (FIMEMORY) |
| ►Interface Functions | Backend specific functions |
| CUDA specific functions | Accessing ArrayFire's stream, and native device id with other CUDA code |
| OpenCL specific functions | Accessing ArrayFire's context, queue, and share data with other OpenCL code |
| ►Linear Algebra | Matrix multiply, solve, decompositions, sparse matrix |
| ►BLAS operations | Matrix multiply, dot product, etc |
| dot | Compute the dot product |
| matmul | Matrix multiplication |
| transpose | Transpose a matrix |
| ►LAPACK Helper functions | |
| isLAPACKAvailable | Returns true if ArrayFire is compiled with LAPACK support |
| ►Linear solve and least squares | Solve, solveLU, etc |
| solve | Solve a system of equations |
| solveLU | Solve a system of equations |
| ►Matrix factorizations and decompositions | LU, QR, Cholesky etc |
| cholesky | Perform Cholesky decomposition |
| lu | Perform LU decomposition |
| qr | Perform QR decomposition |
| svd | Perform singular value decomposition |
| ►Matrix operations | Inverse, det, rank, norm etc |
| det | Find the determinant of a matrix |
| inverse | Invert a matrix |
| norm | Find the norm of a matrix |
| pinverse | Pseudo-invert (Moore-Penrose) a matrix |
| rank | Find the rank of a matrix |
| ►Sparse functions | Functions to create and handle sparse arrays and matrix operations |
| dense | Returns a dense array from a sparse input |
| sparse | Create a sparse array |
| sparseConvertTo | Convert an existing sparse array into a different storage format |
| sparseGetColdx | Returns reference to the column indices component of the sparse array |
| sparseGetInfo | Returns reference to components of the input sparse array |
| sparseGetNNZ | Returns the number of non zero elements in the sparse array |
| sparseGetRowIdx | Returns reference to the row indices component of the sparse array |
| sparseGetStorage | Returns the storage type of a sparse array |
| sparseGetValues | Returns reference to the values component of the sparse array |
| ►Machine Learning | Machine learning functions |
| Convolutions | Forward and backward convolution passes |
| ►Mathematical functions | Functions from standard math library |
| ►Arithmetic operations | +, -, *, /, >>, << |
| add | Elementwise addition |
| bitshiftl | Shift the bits of integer arrays left |
| bitshiftr | Shift the bits of integer arrays right |
| div | Elementwise division |
| mul | Elementwise multiply |
| sub | Elementwise subtraction |
| ►Complex operations | Real, imag, conjugate etc |
| complex | Create complex arrays |
| conjg | Evaluate the complex conjugate of an input array |
| imag | Returns the imaginary part of a complex array |
| real | Returns the real part of a complex array |
| ►Exponential and logarithmic functions | Exp, log, expm1, log1p, etc |
| cbrt | Evaluate the cube root |
| erf | Evaluate the error function |
| erfc | Evaluate the complementary error function |
| exp | Evaluate the exponential function |
| expm1 | Evaluate the exponential function of an array minus 1, exp(in) - 1 |
| factorial | Evaluate the factorial |
| lgamma | Evaluate the logarithm of the absolute value of the gamma function |
| log | Evaluate the natural logarithm |
| log10 | Evaluate the base 10 logarithm |
| log1p | Evaluate the natural logarithm of 1 + input, ln(1+in) |
| log2 | Evaluate the base 2 logarithm |
| pow | Raise a base to a power (or exponent) |
| pow2 | Raise 2 to a power (or exponent) |
| root | Evaluate the nth root |
| rsqrt | Evaluate the reciprocal square root |
| sqrt | Evaluate the square root |
| tgamma | Evaluate the gamma function |
| ►Hyperbolic functions | Sinh, cosh, tanh, etc |
| acosh | Evaluate the inverse hyperbolic cosine function (area hyperbolic cosine) |
| asinh | Evaluate the inverse hyperbolic sine function (area hyperbolic sine) |
| atanh | Evaluate the inverse hyperbolic tangent function (area hyperbolic tangent) |
| cosh | Evaluate the hyperbolic cosine function |
| sinh | Evaluate the hyperbolic sine function |
| tanh | Evaluate the hyperbolic tangent function |
| ►Logical operations | &&, ||, |, &, <, >, <=, >=, ==, ! |
| and | Evaluate the logical AND of two arrays |
| bitand | Evaluate the bitwise AND of two arrays |
| bitnot | Evaluate the bitwise NOT of an array |
| bitor | Evaluate the bitwise OR of two arrays |
| bitxor | Evaluate the bitwise XOR of two arrays |
| eq | Equal to, an elementwise comparison of two arrays |
| ge | Greater than or equal to, an elementwise comparison of two arrays |
| gt | Greater than comparison, an elementwise comparison of two arrays |
| le | Less than or equal to, an elementwise comparison of two arrays |
| lt | Less than, an elementwise comparison of two arrays |
| neq | Not equal to, an elementwise comparison of two arrays |
| not | Evaluate the logical NOT of an array |
| or | Evaluate the logical OR of two arrays |
| ►Numeric functions | Floor, round, min, max, etc |
| abs | Calculate the absolute value |
| arg | Calculate the phase angle (in radians) of a complex array |
| ceil | Rounds up to the least integer greater than or equal to x |
| clamp | Clamp an array between an upper and a lower limit |
| floor | Rounds down to the greatest integer less than or equal to x |
| hypot | Evaluate the length of the hypotenuse of two inputs |
| max | Returns the elementwise maximum between two arrays |
| min | Returns the elementwise minimum between two arrays |
| mod | Calculate the modulus |
| neg | Negate an array |
| rem | Calculate the remainder of a division |
| round | Round numbers to the nearest integer |
| sign | Return the sign of elements in an array |
| trunc | Truncate numbers to nearest integer |
| ►Trigonometric functions | Sin, cos, tan, etc |
| acos | Evaluate the inverse cosine function (arc cosine) |
| asin | Evaluate the inverse sine function (arc sine) |
| atan/atan2 | Evaluate the inverse tangent function (arc tangent) |
| cos | Evaluate the cosine function |
| sin | Evaluate the sine function |
| tan | Evaluate the tangent function |
| ►Memory Management | Interfaces for writing custom memory managers |
| Memory Manager API | Functions for defining custom memory managers |
| Memory Manager Utils | Set and unset memory managers, set and get manager payloads, function setters |
| Native Memory Interface | Native alloc, native free, get device id, etc |
| ►Signal Processing | Convolutions, FFTs, filters |
| ►Convolutions | 1D, 2D and 3D convolutions |
| convolve (Non-separable) | Convolution Integral for any(one through three) dimensional data |
| convolve (Separable) | Separable Convolution |
| convolve1 | Convolution Integral for one dimensional data |
| convolve2 | Convolution Integral for two dimensional data |
| convolve3 | Convolution Integral for three dimensional data |
| ►Fast Fourier Transforms | 1D, 2D and 3D forward, inverse FFTs |
| fft | Fast Fourier Transform |
| fft2 | Fast Fourier Transform |
| fft3 | Fast Fourier Transform |
| fftC2R | Complex to Real Fast Fourier Transform |
| fftR2C | Real to Complex Fast Fourier Transform |
| ifft | Fast Fourier Transform |
| ifft2 | Fast Fourier Transform |
| ifft3 | Fast Fourier Transform |
| ►Filter | Fir, iir, etc |
| fir | This function implements a Finite Impulse Filter |
| iir | This function implements a Infinite Impulse Filter |
| ►Interpolation and approximation | 1D and 2D interpolation |
| approx1 | Interpolation across a single dimension |
| approx2 | Interpolation along two dimensions |
| ►Statistics | A list of Statistics functions |
| ►Basic statistics functions | Mean, median, variance, etc |
| corrcoef | Find the correlation coefficient of values in the input |
| cov | Find the covariance of values in the input |
| mean | Find the mean of values in the input |
| median | Find the median of values in the input |
| stdev | Find the standard deviation of values in the input |
| topk | This function returns the top k values along a given dimension of the input array |
| var | Find the variance of values in the input |
| ►Unified API Functions | Functions to set current backend and utilities |
| getActiveBackend | Get's the backend enum for the active backend |
| getAvailableBackends | Returns an integer indicating the backends loaded successfully |
| getBackendCount | Get the number of backends whose libraries were successfully loaded |
| getBackendId | Get's the backend enum for an array |
| getDeviceId | Get's the id of the device an array was created on |
| setBackend | Set the current backend when using Unified backend |
| ►Vector Algorithms | Sum, min, max, sort, set operations, etc |
| ►Inclusive scan operations | Inclusive / cumulative sum, etc |
| accum | Evaluate the cumulative sum (inclusive) along a given dimension |
| scan | Scan an array (generalized) over a given dimension |
| scanByKey | Scan an array (generalized) over a given dimension, according to an array of keys |
| where | Locate the indices of the non-zero values in an array |
| ►Numerical differentiation | Diff, gradient, etc |
| diff1 | Calculate the first order difference in an array over a given dimension |
| diff2 | Calculate the second order difference in an array over a given dimension |
| grad | Calculate the gradients of the input |
| ►Reduction operations | Sum, min, max, etc |
| allTrue | Check if all values along a given dimension are true |
| allTrueByKey | Check if all values along a given dimension are true, according to an array of keys |
| anyTrueByKey | Check if any values along a given dimension are true, according to an array of keys |
| anytrue | Check if any values along a given dimension are true |
| count | Count non-zero values in an array along a given dimension |
| countByKey | Count non-zero values in an array, according to an array of keys |
| max | Return the maximum along a given dimension |
| maxByKey | Return the maximum along a given dimension, according to an array of keys |
| min | Return the minimum along a given dimension |
| minByKey | Return the minimum along a given dimension, according to an array of keys |
| product | Multiply array elements over a given dimension |
| productByKey | Multiply array elements over a given dimension, according to an array of keys |
| sum | Sum array elements over a given dimension |
| sumByKey | Sum array elements over a given dimension, according to an array of keys |
| ►Set operations | Unique, union, intersect |
| setintersect | Evaluate the intersection of two arrays |
| setunion | Evaluate the union of two arrays |
| setunique | Return the unique values in an array |
| ►Sort operations | Sort, sort by key, etc |
| sort | Sort an array over a given dimension |
| sortByKey | Sort an array over a given dimension, according to an array of keys |
| sortIndex | Sort an array over a given dimension and return the original indices |
| ►Graphics | |
| Rendering Functions | Rendering functions to draw images, plots etc |
| Window Functions | Window creation, modification and destruction functions |