Skip to content

A problem with chol() function

3 messages · Ron Michael, Brian Ripley, Bert Gunter

#
I think I am missing something with the chol() function. Here is my calculation:
?
???? [,1] [,2] [,3] [,4] [,5]
[1,]??? 1??? 3??? 0??? 0??? 0
[2,]??? 0??? 1??? 0??? 0??? 0
[3,]??? 0??? 0??? 1??? 0??? 0
[4,]??? 0??? 0??? 0??? 1??? 0
[5,]??? 0??? 0??? 0??? 0??? 1
$values
[1] 1 1 1 1 1
$vectors
???? [,1]????????? [,2] [,3] [,4] [,5]
[1,]??? 1 -1.000000e+00??? 0??? 0??? 0
[2,]??? 0? 7.401487e-17??? 0??? 0??? 0
[3,]??? 0? 0.000000e+00??? 1??? 0??? 0
[4,]??? 0? 0.000000e+00??? 0??? 1??? 0
[5,]??? 0? 0.000000e+00??? 0??? 0??? 1
Error in chol.default(mat) : 
? the leading minor of order 2 is not positive definite

As per the eigen values my matrix is PD (as all eigen values are positive). Then why still I can not get Cholesky factor of my matrix? Can somebody point mw where I am missing?
?
Thanks and regards,
#
On Sun, 23 Oct 2011, Ron Michael wrote:

            
Reading the help page:

      Compute the Choleski factorization of a real symmetric
                                                   ^^^^^^^^^
      positive-definite square matrix.

....

      Note that only the upper triangular part of ?x? is used, so that
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

A <- diag(5)
A[1,2] <- A[2,1] <- 3
eigen(A)$values
[1]  4  1  1  1 -2