3329×3329
次元の行列m
があり、零点がたくさんあり、計算したいm^9
です。 matrix
パッケージ(Data.Matrix
は使いやすいです)でこれを試した後、私は、疎な行列がメモリ使用量と場合によっては計算速度の点でより良い表現になると考えました。だから私はhmatrix
パッケージを使用する方法を理解しようとしています。hmatrixを使用して疎行列を掛ける方法
module Example where
import Numeric.LinearAlgebra as LA
assocExample :: AssocMatrix
assocExample = [((0,0), 1),((3329,5),1)]
sparseExample :: GMatrix
sparseExample = LA.mkSparse assocExample
この時点で私の問題は、私はGMatrix
を持っていることのように見えるが、乗算演算子(<>)
のために、私が代わりにMatrix t
を必要とする:私はすでにスパース行列を作成するために管理してきました。 hackageに関するhmatrixドキュメントを見ることで、私はここでMatrix t
を入手する方法を見つけることができませんでした。
私はまた、introduction to hmatrixを気にしましたが、sparse
という言葉にも言及されていません。
私の勘違いは、これが簡単にできるはずですが、私は単純なものが欠けています。
ちょっとおかげで - 私はこれを少し調査し、おそらくあなたの答えを受け入れるよります。この可能性は私にさえ起こらなかった^^ –