# [−][src]Function arrayfire::svd

`pub fn svd<T>(input: &Array<T>) -> (Array<T>, Array<T::BaseType>, Array<T>) where`

T: HasAfEnum + FloatingPoint,

T::BaseType: HasAfEnum,

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

# Parameters

`in`

is the input matrix

# Return Values

A triplet of Arrays.

The first Array is the output array containing U

The second Array is the output array containing the diagonal values of sigma, (singular values of the input matrix))

The third Array is the output array containing V ^ H