For Programmers: Free Programming Magazines  


Home > Archive > Fortran > December 2004 > question on the svd









You are viewing an archived Text-only version of the thread. To view this thread in it's original format and/or if you want to reply to this thread please [click here]

 

Author question on the svd
rm

2004-12-16, 3:57 am

I read that for a non-square matrix, A, eg: mxn, m<n only the singular
values D are unique.
A = U*D*V'

And that A can be expressed as:
A = U1*D*V1' = U2*D*V2'

How does one compute different possibilities of the left and right
singular matrices ie the set of {U} and the set of {D}? and the number
of solutions that exist in the set?

Thanks!

Jentje Goslinga

2004-12-16, 3:57 am



rm wrote:
> I read that for a non-square matrix, A, eg: mxn, m<n only the
> singular values D are unique. A = U*D*V'
>
> And that A can be expressed as: A = U1*D*V1' = U2*D*V2'
>
> How does one compute different possibilities of the left and right
> singular matrices ie the set of {U} and the set of {D}? and the
> number of solutions that exist in the set?


This is not so mysterious, you can work minus signs into
both the left and right matrices by writing

D = Ik.D.Ik

with Ik a Unit Matrix with its k-th diagonal element negated.
Now left multiply Ik into V' and right multiply into U.
Work out for yourself in how many ways this can be done.

This is not really any different from the symmetric eigenvalue
problem where eigenvectors are also determined up to a
multiplication by -1.

The folks in sci.math.num-analysis probably can say it better.

> Thanks!


Jentje Goslinga

Ian Bush

2004-12-16, 8:58 am

Jentje Goslinga wrote:

> This is not really any different from the symmetric eigenvalue
> problem where eigenvectors are also determined up to a
> multiplication by -1.
>


More strictly for all normalised eigenvectors that correspond
to non-degenerate eigenvalues they are determined up to a factor
k, where k * CONJG( k ) = 1. When there are degeneracies any linear
combination of the evecs that correspond to the degenerate evals is
also an evec,

Ian

Rich Townsend

2004-12-16, 4:05 pm

Ian Bush wrote:
> Jentje Goslinga wrote:
>
>
>
>
> More strictly for all normalised eigenvectors that correspond
> to non-degenerate eigenvalues they are determined up to a factor
> k, where k * CONJG( k ) = 1. When there are degeneracies any linear
> combination of the evecs that correspond to the degenerate evals is
> also an evec,
>
> Ian
>


Less strictly, this only applies to normal eigenvectors. For non-normal
eigenvectors, they can be scaled by any factor desirable.

cheers,

Rich

--
Dr Richard H D Townsend
Bartol Research Institute
University of Delaware

[ Delete VOID for valid email address ]
Gordon Sande

2004-12-16, 4:06 pm



Jentje Goslinga wrote:
>
>
> rm wrote:
>
> This is not so mysterious, you can work minus signs into
> both the left and right matrices by writing
>
> D = Ik.D.Ik
>
> with Ik a Unit Matrix with its k-th diagonal element negated.
> Now left multiply Ik into V' and right multiply into U.
> Work out for yourself in how many ways this can be done.
>
> This is not really any different from the symmetric eigenvalue
> problem where eigenvectors are also determined up to a
> multiplication by -1.
>
> The folks in sci.math.num-analysis probably can say it better.
>
>
> Jentje Goslinga
>


And when there are repeated singular values there can be rotation
matrices applied to the subspace spanned by their singular vectors.
In the rectangular case this means that the space corresponding to
the zero values has many representations. See a numerical analysis
book like Golub and van Loan.


Sponsored Links







Also available: Server administration forum archive | Web Design forum archive | Software forum archive | Hardware reviews archive

Copyright 2009 codecomments.com