{r} # summary(cars) #

A = matrix(c(1,-1,0,-1,2,1,0,-1,1), byrow=T, ncol=3)
A
## [,1] [,2] [,3]
## [1,] 1 -1 0
## [2,] -1 2 1
## [3,] 0 -1 1
dim(A)
## [1] 3 3
t(A)
## [,1] [,2] [,3]
## [1,] 1 -1 0
## [2,] -1 2 -1
## [3,] 0 1 1
A == t(A)
## [,1] [,2] [,3]
## [1,] TRUE TRUE TRUE
## [2,] TRUE TRUE FALSE
## [3,] TRUE FALSE TRUE
A*A
## [,1] [,2] [,3]
## [1,] 1 1 0
## [2,] 1 4 1
## [3,] 0 1 1
A%*%A
## [,1] [,2] [,3]
## [1,] 2 -3 -1
## [2,] -3 4 3
## [3,] 1 -3 0
det(A)
## [1] 2
solve(A)
## [,1] [,2] [,3]
## [1,] 1.5 0.5 -0.5
## [2,] 0.5 0.5 -0.5
## [3,] 0.5 0.5 0.5
sum(diag(A))
## [1] 4
eigen(A)
## eigen() decomposition
## $values
## [1] 2+0i 1+0i 1-0i
##
## $vectors
## [,1] [,2] [,3]
## [1,] 0.5773503+0i 7.071068e-01+0.000000e+00i 7.071068e-01+0.000000e+00i
## [2,] -0.5773503+0i 5.744170e-16-9.702837e-09i 5.744170e-16+9.702837e-09i
## [3,] 0.5773503+0i 7.071068e-01+0.000000e+00i 7.071068e-01-0.000000e+00i
class(A)
## [1] "matrix"
E = eigen(A)
class(E)
## [1] "eigen"
names(E)
## [1] "values" "vectors"
l = E$values
l
## [1] 2+0i 1+0i 1-0i
D = diag(l)
class(l)
## [1] "complex"
U = E$vectors
class(U)
## [1] "matrix"
diag(l)
## [,1] [,2] [,3]
## [1,] 2+0i 0+0i 0+0i
## [2,] 0+0i 1+0i 0+0i
## [3,] 0+0i 0+0i 1-0i
D = diag(l)
U%*%D%*%solve(U)
## [,1] [,2] [,3]
## [1,] 1e+00+0.000000e+00i -1-0i 0e+00-1.490116e-08i
## [2,] -1e+00-0.000000e+00i 2+0i 1e+00+0.000000e+00i
## [3,] 0e+00+1.490116e-08i -1+0i 1e+00-0.000000e+00i
D^10
## [,1] [,2] [,3]
## [1,] 1024+0i 0e+00+0e+00i 0e+00+0e+00i
## [2,] 0+0i 1e+00+1e-07i 0e+00+0e+00i
## [3,] 0+0i 0e+00+0e+00i 1e+00-1e-07i
U%*%(D^10)%*%solve(U)
## [,1] [,2] [,3]
## [1,] 1014+0i -1023-0i -1013-0i
## [2,] -1023-0i 1024+0i 1023+0i
## [3,] 1013+0i -1023-0i -1012-0i
U%*%(sqrt(D))%*%solve(U)
## [,1] [,2] [,3]
## [1,] 9.142136e-01+0e+00i -0.4142136-0i 8.578644e-02+7e-09i
## [2,] -4.142136e-01-0e+00i 1.4142136-0i 4.142136e-01+0e+00i
## [3,] -8.578644e-02+7e-09i -0.4142136+0i 1.085786e+00+0e+00i