forum.alglib.net

ALGLIB forum
It is currently Sun Dec 22, 2024 11:53 pm

All times are UTC


Forum rules


1. This forum can be used for discussion of both ALGLIB-related and general numerical analysis questions
2. This forum is English-only - postings in other languages will be removed.



Post new topic Reply to topic  [ 4 posts ] 
Author Message
 Post subject: SVD solver
PostPosted: Mon Nov 14, 2011 11:56 am 
Offline

Joined: Mon Nov 14, 2011 11:42 am
Posts: 2
Hello, my name is Vsevolod, I would like to ask about SVD-based solver implemented in alglib library.

As far as I know, alglib solver for system of linear equations based on QR and SVD matrix decompositon.
So if we have system of equations Ax = b, then if cond(a) > sqrt(5e-16) we use QR decomposition of matrix A, otherwise we use SVD decomposition.
The question is, whether alglib use just ordinary Moore–Penrose pseudoinverse for solving system of linear equations, or it uses Truncated SVD. I mean does alglib cutoff(make equal zero) small singular values or not.
If does, so what is the threshold. I mean how small should singular value be for cutting of(for alglib made it equal to zero)

Thanks a lot in advance!!!!


Top
 Profile  
 
 Post subject: Re: SVD solver
PostPosted: Tue Nov 15, 2011 11:19 am 
Offline
Site Admin

Joined: Fri May 07, 2010 7:06 am
Posts: 927
Hello!

ALGLIB uses truncated SVD, i.e. it throws away very small singular values.


Top
 Profile  
 
 Post subject: Re: SVD solver
PostPosted: Wed Nov 16, 2011 11:10 am 
Offline

Joined: Mon Nov 14, 2011 11:42 am
Posts: 2
Sergey.Bochkanov wrote:
Hello!

ALGLIB uses truncated SVD, i.e. it throws away very small singular values.


Thanks, a lot for answer. And can u say threshold for throwing away small singular values?
How small should be singular value for throwing away?(Should it be of order about 1e-300,
or order 1e-14 is also enough for throwing away?)

How does alglib determine whether this singular value small or not(for throwing away). Does it depend on some parameters, for example value of the biggest singular value or smth else?

Thanks a lot!
Best, regards!


Top
 Profile  
 
 Post subject: Re: SVD solver
PostPosted: Thu Nov 17, 2011 9:14 am 
Offline
Site Admin

Joined: Fri May 07, 2010 7:06 am
Posts: 927
ALGLIB uses threshold approximately equal to sv_max*10^(-14). It makes solver scale-invariant - you can multiply your matrix by arbitrary number, and still solver will use same set of singular values. Smaller thresholds (like 1e-300) do not make sense because such small singular values are just numerical noise.


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 4 posts ] 

All times are UTC


Who is online

Users browsing this forum: No registered users and 37 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group