.NET/C# 用の優れた (十分にテストされ、完全な機能を備え、理想的には優れたインターフェイスを備えた) マトリックス ライブラリを探しています。ここでの私の主な要件は、無料であること (この場合はオープンソースかどうかは特に気にしません) と、できれば疎行列演算をサポートすることだけです。必須要件は、すべての基本演算 (乗算、転置、反転など) と、固有値と固有ベクトルの検索です。固有値を発見するための解析的手法ではなく数値的手法の実装、特にランチョス アルゴリズム疎行列の場合、これから扱う行列が非常に大きく (10,000 以上の長さ)、正方行列であり、適度に疎であるため、非常に望ましいでしょう。そうは言っても、私はそこに少し多くを求めている可能性があるので、合理的に完全な行列ライブラリの提案は素晴らしいでしょう.
現在、Python にはそのようなタスク (つまりNumPy / SciPy ) に役立つライブラリが 1 つまたは 2 つあることを認識していますが、残念ながら .NET にはその分野が欠けているようです。
少し検索すると、.NET 用の次のライブラリが見つかりました。これを使用できる可能性があります。
- ルッツ・ローダーのマップパック
- DotNetMatrix (コードプロジェクト)
- C# マトリックス ライブラリ(CodeProject)
ただし、私はこれらのライブラリやその他のライブラリを使用した経験がまったくないため (いずれにせよ、それぞれを適切にチェックするのに十分な時間がありません)、さまざまなライブラリに関する推奨事項について議論できる人がいれば、非常にありがたいです。 、特に私の用途への適合性に関する長所/短所、およびそれらの一般的な経験.
MatLab に頼ることは常にオプションですが、優先されるものではありません。行列の計算を自分のプログラムに直接統合できればはるかに便利だからです。