0

Given a matrix $A$:

$$ A = \begin{pmatrix} a_{11} & 0 & a_{13} \\ 0 & a_{22} & a_{23} \\ 0 & 0 & 1 \\ \end{pmatrix} $$

All the parameters different from $0$ are strictly positive. I was wondering if in this specific case there's like a simple solution for the SVD decomposition.

My attempt was to find the eigenvalues and then the eigenvectors, but I've realized that I don't know a specific algorithm for this.

I think I can use somehow the Gram Schmidt orthonormalization procedure, but I might be wrong here.

Any suggestion is welcome.

Jean Marie
  • 88,997
user8469759
  • 5,591
  • 4
  • 20
  • 54
  • Do you mean you intend to find explicit expressions (as formulas with the different $a_{ij}$) for the entries of matrices $U,S,V$ such that $A=USV^T$ ? – Jean Marie Aug 19 '19 at 16:56
  • Maybe this is relevant : https://math.stackexchange.com/q/1746065 with the essential technique of Cholesky decomposition (It is doubtful that Gram Schmidt is useful here) – Jean Marie Aug 19 '19 at 17:00
  • @JeanMarie If there's a closed form expression that's better. But it's not necessary. For the Cholesky factorization I'm familiar with the algorithm but I've never used it for this purpose, can you provide more info on how it is supposed to be used for this task? – user8469759 Aug 19 '19 at 17:30
  • See my answer. For Cholesky, I think that the reference I gave provides enough information. – Jean Marie Aug 19 '19 at 18:24

1 Answers1

4

Let us use the following simplified notations :

$$M:= \begin{pmatrix} a & 0 & b \\ 0 & c & d\\ 0 & 0 & 1 \\ \end{pmatrix}$$

We are looking for the SVD decomposition $M=USV^T$ of $M$.

$$N:=M^TM= \begin{pmatrix} a^2 & 0 & ab \\ 0 & c^2 & cd\\ ab & cd & (b^2+d^2+1) \\ \end{pmatrix}=(USV^T)^T(USV^T)=VS^2V^T.$$

The characteristic polynomial of $N$ (whose roots are the $\sigma_k^2$s) depends only on $A=a^2, B=b^2, C=c^2, D=d^2$ ; it is :

$$- x^3 + \underbrace{(A+B+C+D+1)}_{\text{trace}(N)}x^2 - (AC+AD+BC+A+C)x +\underbrace{AC}_{\det(N)} \tag{1}$$

(see how simple is the determinant !)

Now, either one takes a "numerical attitude", and it's rather easy, or, for the fun, one can try a Computer Algebra System...

providing explicit expressions for the 3 roots of polynomial above, but these are one kilometer long...(I don't try to reproduce them here).

Having the $\sigma_k$s, one can easily obtain $V$ as the matrix of eigenvectors associated with the $\sigma_k^2$s, either formally (desperate !) or numerically.

Now a similar treatment can be done on $MM^T$ for obtaining $U$ (but one can short-circuit the computation in different ways...).

Jean Marie
  • 88,997
  • I still don't get why this procedure works, I mean why using cholesky on that product would give me the SVD? – user8469759 Aug 20 '19 at 07:21
  • Do you agree that $N=M^TM=(USV^T)^T(USV^T)=VS^2V^T$ ? This is why the columns of $V$ are the eigenvectors associated with eigenvalues $\sigma_k^2$. And eigenvectors are obtained by solving a linear system that can be reduced to 2 linear equations in two unknowns. – Jean Marie Aug 20 '19 at 07:27
  • Ah I see, so the procedure would be compute the matrix $N$ in your notation and then perform an eigenvalue/vector analysis, and I need to take the square root of the eigen vectors. However with this procedure I'd get only $V$ but not $U$, is that right? – user8469759 Aug 20 '19 at 08:20
  • Yes, you would have to do the same type of computation on $P:=MM^T$. BUT you can use as well the fact that $M=USV^T \ \iff \ U=M(V^T)^{-1}S^{-1}$ provided these matrices are invertible... which should be the case. – Jean Marie Aug 20 '19 at 08:26
  • 1
    Thank you so much (I know people don't like these comments but I feel like I should show appreciation to who gives me detailed answers like this). – user8469759 Aug 20 '19 at 08:29
  • I appreciate. I do the same. – Jean Marie Aug 20 '19 at 08:31
  • @JeanMarie V must be invertible (and its inverse it just its transpose) since its orthogonal. We can ignore S (which may not be invertible if a singular value is 0). Just let U = MV and the normalize the columns of U .. viola. – wcochran Jul 16 '23 at 18:12