[R] Matrix exponential
    Erin Hodgess 
    hodgess at gator.uhd.edu
       
    Tue Jan 20 19:28:26 CET 2004
    
    
  
How about this:
	
> expm
function(x,pow=2) 
{
xd <- diag((eigen(x)$values^pow))
xm <- eigen(x)$vector %*% xd %*% t(eigen(x)$vector)
return(xm)
}
> xa
     [,1] [,2]
[1,]    2    1
[2,]    1    3
> expm(xa,pow=3)
     [,1] [,2]
[1,]   15   20
[2,]   20   35
> xa %*% xa %*% xa
     [,1] [,2]
[1,]   15   20
[2,]   20   35
> 
From: Federico Calboli <f.calboli at ucl.ac.uk>
To: r-help <r-help at stat.math.ethz.ch>
Subject: [R] matrix exponential: M^0~~
Dear All, 
I would like to ask why the zeroeth power of a matrix gives me a matrix
of ones rather than the identity matrix:
> D<-rbind(c(0,0,0),c(0,0,0),c(0,0,0))
> D<-as.matrix(D)
> D
     [,1] [,2] [,3]
[1,]    0    0    0
[2,]    0    0    0
[3,]    0    0    0
> D^0
     [,1] [,2] [,3]
[1,]    1    1    1
[2,]    1    1    1
[3,]    1    1    1
I would have expected the identity matrix here.
I find the same result with every other square matrix I used.
BTW, I am using R 1.8.1 on Linux Mandrake 9.1
Cheers,
Federico Calboli
-- 
=================================
Federico C. F. Calboli
PLEASE NOTE NEW ADDRESS
Dipartimento di Biologia
Via Selmi 3
40126 Bologna
Italy
tel (+39) 051 209 4187
fax (+39) 051 251 208
f.calboli at ucl.ac.uk
    
    
More information about the R-help
mailing list