/la4j

Linear Algebra for Java

Primary LanguageJavaApache License 2.0Apache-2.0

Latest release (Dec 2012): la4j-0.3.0.zip la4j (Linear Algebra for Java) Build Status

la4j logo

la4j - is open source and 100% Java library that provides Linear Algebra primitives and algorithms. There are the key features of la4j listed bellow:

  • No dependencies and tiny size (~130kb jar)
  • Simple and object-oriented/functional API
  • Sparse (CRS, CCS) and dense (1D/2D arrays) matrices and vectors
  • Linear systems solving (Gaussian, Jacobi, Zeidel, Square Root, Sweep and other)
  • Matrices decomposition (Eigenvalues, SVD, QR, LU, Cholesky and other)
  • Functors support: predicates, functions, procedures and accumulators
  • MatrixMarket/CSV IO formats support

Brief Example

Matrix a = new Basic2DMatrix(new double[][] {
   { 1.0, 2.0, 3.0 },
   { 4.0, 5.0, 6.0 },
   { 7.0, 8.0. 9.0 }
});

Matrix b = a.invert(Matrices.DEFAULT_INVERTOR); // uses Gaussian Elimination 

Download

Details of the latest version of la4j can be found on the la4j project web site http://la4j.org or GitHub page https://github.com/vkostyukov/la4j.

Licensing

This software is licensed under the terms you may find in the file named "LICENSE" in this directory.

Contributors

la4j wouldn't be the library it is today without the source contributions made by the authors:

  • Wajdy Essam
  • Evgenia Krivova
  • Julia Kostyukova
  • Alessio Placitelli
  • Pavel Kalaidin
  • Chandler May

by Vladimir Kostyukov, 2011-2013