|
Perform Singular Value Decomposition. More...
Functions | |
AFAPI void | svd (array &u, array &s, array &vt, const array &in) |
C++ Interface for SVD decomposition. More... | |
AFAPI void | svdInPlace (array &u, array &s, array &vt, array &in) |
C++ Interface for SVD decomposition. More... | |
AFAPI af_err | af_svd (af_array *u, af_array *s, af_array *vt, const af_array in) |
C Interface for SVD decomposition. More... | |
AFAPI af_err | af_svd_inplace (af_array *u, af_array *s, af_array *vt, af_array in) |
C Interface for SVD decomposition. More... | |
Perform Singular Value Decomposition.
This function factorizes a matrix A into two unitary matrices U and Vt, and a diagonal matrix S such that
\(A = U * S * Vt\)
If A has M rows and N columns, U is of the size M x M , V is of size N x N, and S is of size M x N
The arrayfire function only returns the non zero diagonal elements of S. To reconstruct the original matrix A from the individual factors, the following code snuppet can be used:
When memory is a concern, and A is dispensible, svdInPlace() can be used
C Interface for SVD decomposition.
[out] | u | is the output array containing U |
[out] | s | is the output array containing the diagonal values of sigma, (singular values of the input matrix)) |
[out] | vt | is the output array containing V^H |
[in] | in | is the input matrix |
C Interface for SVD decomposition.
[out] | u | is the output array containing U |
[out] | s | is the output array containing the diagonal values of sigma, (singular values of the input matrix)) |
[out] | vt | is the output array containing V^H |
[in,out] | in | is the input matrix that will contain random data after this operation |
C++ Interface for SVD decomposition.
[out] | u | is the output array containing U |
[out] | s | is the output array containing the diagonal values of sigma, (singular values of the input matrix)) |
[out] | vt | is the output array containing V^H |
[in] | in | is the input matrix |
C++ Interface for SVD decomposition.
[out] | u | is the output array containing U |
[out] | s | is the output array containing the diagonal values of sigma, (singular values of the input matrix)) |
[out] | vt | is the output array containing V^H |
[in,out] | in | is the input matrix and will contain random data after this operation |