On Sun, 23 Oct 2011, Ron Michael wrote:
> I think I am missing something with the chol() function. Here is my
calculation:
> ?
>> mat
> ???? [,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
>> eigen(mat)
> $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
>> chol(mat)
> 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,
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
--
Brian D. Ripley, ripley at stats.ox.ac.uk
Professor of Applied Statistics, http://www.stats.ox.ac.uk/~ripley/
University of Oxford, Tel: +44 1865 272861 (self)
1 South Parks Road, +44 1865 272866 (PA)
Oxford OX1 3TG, UK Fax: +44 1865 272595