- ベストアンサー
Javaを使った行列計算
Javaを使って行列の固有値などを求めるプログラムを 作りたいと考えています。そこで、自分で全て実装する前に Javaのライブラリの中に行列を扱うクラスなどがあるのならば それを利用したいと考えています。そこで、Javaのライブラリに 行列計算に適したクラスなどは用意されているでしょうか。 もしありましたら、教えて頂きたいと思います。お願いします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
失礼 Apache Commons Math を使ってみましたが、どうやら対称行列の固有値計算しかサポートしていないようです。 線形代数の計算なら、JAMA がよさそうですね。 http://math.nist.gov/javanumerics/jama/ 簡単な行列の固有値計算をしてみましたのでご参考までに。 [code] public static void main(String[] args){ double[][] matrixData = {{2,1},{4,2}}; Matrix m = new Matrix(matrixData); EigenvalueDecomposition dec = new EigenvalueDecomposition(m); System.out.println(Arrays.toString(dec.getRealEigenvalues())); } [/code]
その他の回答 (1)
- P_wannabe
- ベストアンサー率50% (1/2)
Apache Commons Math ライブラリを見てみると良いのではないでしょうか。 線形代数の計算は一通り実装されていそうです。 http://commons.apache.org/math/ ”3.5 Eigenvalues/eigenvectors and singular values/singular vectors”という項目が固有値計算のようです。 http://commons.apache.org/math/userguide/linear.html
お礼
大変詳しく説明して頂き、有難うございます。 参考にさせていただきたいと思います。