Поднимите матрицу идентичности до степени

10

Можно ли поднять матрицу идентичности до степени? Я получаю сообщение об ошибке, если пытаюсь использовать ^оператор.

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

Примечание: я знаю, что я мог бы просто сделать (2^2)I, но есть случаи, когда это не может быть сделано (например, когда матрица передается функции, которая вызывает матрицу).

Андреа Нарди
источник

Ответы:

10

Это просто недостающий метод для UniformScalingобъектов. Было бы здорово, если бы вы могли открыть вопрос об этом, чтобы он мог быть добавлен в будущем выпуске.

StefanKarpinski
источник