Function fenris::util::rotation_svd [−][src]
pub fn rotation_svd<T, D>(
matrix: &OMatrix<T, D, D>
) -> (OMatrix<T, D, D>, OVector<T, D>, OMatrix<T, D, D>) where
T: RealField,
D: DimName + DimMin<D, Output = D> + DimSub<U1>,
DefaultAllocator: Allocator<T, D> + Allocator<T, D, D> + Allocator<T, <D as DimSub<U1>>::Output> + Allocator<(usize, usize), D>,
Expand description
An SVD-like decomposition in which the orthogonal matrices U
and V
are rotation matrices.
Given a matrix A
, this method returns factors U
, S
and V
such that
A = U S V^T
, with U, V
orthogonal and det(U) = det(V) = 1
and S
a diagonal matrix
whose entries are represented by a vector.
Note that unlike the standard SVD, S
may contain negative entries, and so they do not
generally coincide with singular values. However, it holds that S(i)^2 == sigma_i^2
, where
sigma_i
is the i
th singular value of A
.
Returns a tuple (U, S, V^T)
.