Role of tol argument in QR decomposition
r
Solution
The `tol` argument controls whether `qr` will return a value or not for a column depending on whether the column has been judged to be linearly dependent. I would think that reducing the `tol` value below 1e-16 would be defeating the purpose of that check. (That's pretty much the pragmatic definition of zero in double precision math.)
First look at `qr.default` and then find the FORTRAN code:
http://svn.r-project.org/R/trunk/src/appl/dqrdc2.f
This is the comment from the FORTRAN routine that describes the logic:
c cycle the columns from l to p left-to-right until one
c with non-negligible norm is located. a column is considered
c to have become negligible if its norm has fallen below
c tol times its original norm. the check for l .le. k
c avoids infinite cycling.
Problem
I am new user in R. Could you please tell me or introduce some refrences which describe the `tol` argument in calculating a QR decomposition in R? For example what is the difference of this two lines: ``` qr(A, tol=1e-07) #Doesn't work qr(A, tol=1e-20) #Works ``` Why do I get my desired resullt with such a small value of `tol`, but not with the bigger value?