pub fn svd_inplace<T>(
input: &mut Array<T>
) -> (Array<T>, Array<T::BaseType>, Array<T>) where
T: HasAfEnum + FloatingPoint,
Perform Singular Value Decomposition inplace
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
inis the input/output matrix. This will contain random data after the function call is complete.
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