Julia: 行列の転置はArrayではない
最初からなのかどっかのバージョンからなのか知らないが、Juliaで行列での転置操作を行うとArrayがArrayでなくなる。どういうことかというと、
A = zeros(2,2) B = A' C = transpose(A)
とすると、AはArray{Float64,2}となるが、BはAdjoint{Float64,Array{Float64,2}}に、CはTranspose{Float64,Array{Float64,2}}になる。 もしtype stableな関数を書いているならば、これで関数の引数が違うのでエラーが出てしまう。
どうするのが正解なのかわからないが、とりあえず
A = zeros(2,2) D = copy(A')
とすれば、DはArray{Float64,2}になるので、現状これを使うしかなさそう。なんか明らかに間抜けなんだが。。。