def msvd(m):
u, s, vdgr = np.linalg.svd(m)<EOL>order = s.argsort()<EOL>s = s[order]<EOL>u= u[:,order]<EOL>vdgr = vdgr[order]<EOL>return u, s, vdgr.conj().T<EOL>
Modified singular value decomposition.

    Returns U, S, V where Udagger M V = diag(S) and the singular values
    are sorted in ascending order (small to large).