Elevar la matriz de identidad a un poder

10

¿Es posible elevar la matriz de identidad a un poder? Me sale un error si intento usar el ^operador.

x = [2 0 ; 0 2]
x^2 # this works fine
(2I)^2 #throws MethodError: no method matching ^(::UniformScaling{Int64}, ::Int64)

Nota: Sé que simplemente podría hacerlo (2^2)I, pero hay casos en los que esto no se puede hacer (por ejemplo, cuando una matriz se pasa a una función que eleva la matriz).

Andrea Nardi
fuente

Respuestas:

10

Es solo un método faltante para los UniformScalingobjetos. Sería genial si pudiera abrir un problema al respecto para que se pueda agregar en una versión futura.

StefanKarpinski
fuente