10
使用可能な高速C ++マトリックスライブラリの推奨事項
使用可能な高速C ++マトリックスライブラリに関する推奨事項はありますか? 使用可能とは、次のことを意味します。 マトリックスオブジェクトには直感的なインターフェイスがあります(例:インデックス作成中に行と列を使用できます) LAPACKおよびBLASで実行できるマトリックスクラスで何でもできます。 簡単に習得して使用できるAPI Linuxにインストールするのは比較的簡単です(現在Ubuntu 11.04を使用しています) 私にとっては、早すぎる最適化を避けるために、現在、速度やメモリ使用よりもユーザビリティが重要です。コードを書く際、私は常に1-D配列(またはSTLベクトル)と適切なインデックスまたはポインター演算を使用して行列をエミュレートできましたが、バグを避けるためにしたくないです。また、行列をエミュレートするために使用した小さなプログラミングトリックのすべてを思い出すために私の限られた注意の一部を使用するのではなく、解決しようとしている実際の問題と問題領域にプログラムしようとする精神的な努力に焦点を当てたい、LAPACKコマンドなどを覚えておいてください。さらに、記述しなければならないコードが少なくなり、コードが標準化されるほど、より良い結果が得られます。 密か疎かはまだ関係ありません。私が扱っているマトリックスの一部はスパースになりますが、すべてではありません。ただし、特定のパッケージが密行列または疎行列を適切に処理する場合は、言及する価値があります。 テンプレートを作成することも重要ではありません。標準の数値型を使用し、double、float、int以外を保存する必要がないからです。いいですが、私がやりたいことには必要ありません。