简体   繁体   English

Java eigensolvers

[英]Java eigensolvers

Does anyone know of an eigensolver in Java that can give me just several smallest eigenvectors w/o computing the whole eigendecomposition (namely, second smallest EV)? 有没有人知道Java中的eigensolver可以给我几个最小的特征向量,而不是计算整个特征分解(即第二小的EV)? I have looked at Colt, Jama, MTJ, UJMP, but these packages compute all eigenvectors. 我看过Colt,Jama,MTJ,UJMP,但这些软件包计算了所有的特征向量。

Can you describe your matrix in more detail? 你能更详细地描述你的矩阵吗? Is it sparse? 稀疏吗? In general, sparse linear algebra packages have methods to compute only a few of the smallest or largest eigenpairs. 通常,稀疏线性代数包具有仅计算一些最小或最大特征对的方法。 For example, you can try to use ARPACK from within Java. 例如,您可以尝试在Java中使用ARPACK。

Another idea is just to write your own version of the Power Method, which is good at finding a few extreme eigenvalues very quickly. 另一个想法是编写自己的Power方法版本,它很擅长快速找到一些极端特征值。 For example, see Eigenvalue Template Book (Hermitian) if your matrix is Hermitian or Eigenvalue Template Book (non-Hermitian) if your matrix is non-Hermitian. 例如,如果您的矩阵是Hermitian或Eigenvalue Template Book(非Hermitian),如果您的矩阵是非Hermitian,请参阅Eigenvalue Template Book(Hermitian)

MTJ includes the netlib-java and has a wrapper to use arpack, so one can solve for a set number of eigenvalues and there are choices on the attributes of those. MTJ包含netlib-java并且有一个使用arpack的包装器,因此可以求解一定数量的特征值,并且可以选择那些属性。

See https://github.com/fommil/matrix-toolkits-java/blob/master/src/test/java/no/uib/cipr/matrix/sparse/ArpackSymTest.java 请参阅https://github.com/fommil/matrix-toolkits-java/blob/master/src/test/java/no/uib/cipr/matrix/sparse/ArpackSymTest.java

and http://static.javadoc.io/com.googlecode.matrix-toolkits-java/mtj/1.0.4/no/uib/cipr/matrix/sparse/ArpackSym.html http://static.javadoc.io/com.googlecode.matrix-toolkits-java/mtj/1.0.4/no/uib/cipr/matrix/sparse/ArpackSym.html

I don't know if this can help you, but this math library isn't on your list. 我不知道这是否可以帮助你,但这个数学库不在你的名单上。

Apache Commons Math Apache Commons Math

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM