単位行列を累乗することは可能ですか?^
演算子を使用しようとすると、エラーが発生します。
x = [2 0 ; 0 2]
x^2 # this works fine
(2I)^2 #throws MethodError: no method matching ^(::UniformScaling{Int64}, ::Int64)
注:私は単純にを実行できることを知って(2^2)I
いますが、これが実行できない場合があります(たとえば、行列を生成する関数に行列が渡される場合)。
単位行列を累乗することは可能ですか?^
演算子を使用しようとすると、エラーが発生します。
x = [2 0 ; 0 2]
x^2 # this works fine
(2I)^2 #throws MethodError: no method matching ^(::UniformScaling{Int64}, ::Int64)
注:私は単純にを実行できることを知って(2^2)I
いますが、これが実行できない場合があります(たとえば、行列を生成する関数に行列が渡される場合)。
回答:
これは、UniformScaling
オブジェクトに欠けているメソッドです。将来のリリースで追加できるように、その問題を公開できればすばらしいと思います。