This article has multiple issues. Please help improve it or discuss these issues on the talk page. (Learn how and when to remove these template messages) The topic of this article may not meet Wikipedia's notability guidelines for products and services. Please help to demonstrate the notability of the topic by citing reliable secondary sources that are independent of the topic and provide significant coverage of it beyond a mere trivial mention. If notability cannot be shown, the article is likely to be merged, redirected, or deleted.Find sources: "Matrix Toolkit Java" – news · newspapers · books · scholar · JSTOR (November 2012) (Learn how and when to remove this template message) This article relies largely or entirely on a single source. Relevant discussion may be found on the talk page. Please help improve this article by introducing citations to additional sources.Find sources: "Matrix Toolkit Java" – news · newspapers · books · scholar · JSTOR (November 2012) This article relies excessively on references to primary sources. Please improve this article by adding secondary or tertiary sources. Find sources: "Matrix Toolkit Java" – news · newspapers · books · scholar · JSTOR (November 2012) (Learn how and when to remove this template message) (Learn how and when to remove this template message)
Matrix Toolkit Java
Original author(s)Bjørn-Ove Heimsund
Initial release2003; 21 years ago (2003)
Preview release
0.9.14 / November 22, 2011 (2011-11-22)
Repositorygithub.com/fommil/matrix-toolkits-java
Written inJava
TypeApplication programming interface (API)
LicenseLGPL

Matrix Toolkit Java (MTJ) is an open-source Java software library for performing numerical linear algebra. The library contains a full set of standard linear algebra operations for dense matrices based on BLAS and LAPACK code. Partial set of sparse operations is provided through the Templates project. The library can be configured to run as a pure Java library or use BLAS machine-optimized code through the Java Native Interface.

MTJ was originally developed by Bjørn-Ove Heimsund, who has taken a step back due to other commitments. The project webpage states that "(The new maintainers are) primarily concerned with keeping the library maintained, and fixing bugs as they are discovered. There is no road plan for future releases".[1]

Several citations for MTJ can be found in scientific literature, including [2] which uses its LU preconditioner. Performance of MTJ has been compared to other libraries, which can be found at Java Matrix Benchmark's site.[3]

Capabilities

The following is an overview of MTJ's capabilities, as listed on the project's website:

Usage Examples

Example of Singular Value Decomposition (SVD):

SVD svd = new SVD(matA.numRows(),matA.numColumns());
SVD s = svd.factor(matA);
DenseMatrix U = s.getU();
DenseMatrix S = s.getS();
DenseMatrix Vt = s.getVt();

Example of matrix multiplication:

DenseMatrix result = new DenseMatrix(matA.numRows(),matB.numColumns());
matA.mult(matB,result);

See also

References

  1. ^ "MTJ Project Page". MTJ. Retrieved November 30, 2012.
  2. ^ McMahan, H.B.; Gordon, G.J. (2005). "Fast exact planning in Markov decision processes" (PDF). Proc. of the 15th International Conference on Automated Planning and Scheduling (ICAPS-05).
  3. ^ "Java Matrix Benchmark". Retrieved December 6, 2012.