2017-08-15 4 views
1

Julia v0.6.0のLowRankApprox.jlパッケージで提供されているpheigfact関数を使用して、エルミートの固有値分解を試みています。基本的には、次のようなコードのほんの1行でした:JuliaのLowRankApproxに関する問題

(E, F) = pheigfact(A); 

ここで、Aは実対称正定値行列です。ただし、次のエラーが表示されます。

MethodError: no method matching 
start(::LowRankApprox.PartialHermitianEigen{Float64,Float64}) 
Closest candidates are: 
    start(!Matched::SimpleVector) at essential.jl:258 
    start(!Matched::Base.MethodList) at reflection.jl:560 
    start(!Matched::ExponentialBackOff) at error.jl:107 

ありがとうございました!

答えて

2

TL; DR

利用機能pheigないpheigfactは、私はパッケージを持っていない値とベクトル


全解答

のタプルを返すことが、ドキュメントからは、pheigfactのように、を使用して値/ベクトルにアクセスできる単一の要素が返されます。

F = pheigfact(A) 
values=F[:values] 
vectors=F[:vectors] 

、あなたは試してみて、チューブに単一の要素を割り当てた場合、それは試してみて、それをサポートしないタイプ(つまり型はメソッドstartを持っていません)あなたのエラーを与えることを反復処理します。私は戻ってタプルを行う機能pheigを使用して、同様のエラーがいずれかのx,y = :onetwoまたはstart(:onetwo)

ソリューション

をやって得ることができます。

E, F = pheig(A) 
+0

これは機能しました。ありがとうございました! – ywa136