HOME

TheInfoList



OR:

SuanShu is a Java math library. It is open-source under Apache License 2.0 available i
GitHub
SuanShu is a large collection of Java classes for basic numerical analysis, statistics, and optimization. It implements a parallel version of the adaptive strassen's algorithm for fast matrix multiplication. SuanShu has been quoted and used in a number of academic works.


Features

* linear algebra * root finding * curve fitting and interpolation * unconstrained and constrained optimization * statistical analysis * linear regression * probability distributions and random number generation * ordinary and partial differential equation solvers


License terms

SuanShu is released under the terms of the Apache License 2.0


Examples of usage

The following code shows the object-oriented design of the library (in contrast to the traditional procedural design of many other FORTRAN and C numerical libraries) by a simple example of minimization. LogGamma logGamma = new LogGamma(); // the log-gamma function BracketSearchMinimizer solver = new BrentMinimizer(1e-8, 10); // precision, max number of iterations UnivariateMinimizer.Solution soln = solver.solve(logGamma); // optimization double x_min = soln.search(0, 5); // bracket =
, 5 The comma is a punctuation mark that appears in several variants in different languages. It has the same shape as an apostrophe or single closing quotation mark () in many typefaces, but it differs from them in being placed on the baseline ...
System.out.println(String.format("f(%f) = %f", x_min, logGamma.evaluate(x_min)));


See also

* SOCP - Explanation of Second Order Conic Programming * SDP - Explanation of Semidefinite Programming * SQP - Explanation of Sequential quadratic programming * Interior Point Method
Adaptive strassen's algorithm
– fast matrix multiplication * Apache License 2.0 - Version 2 of the Apache Software License


References

{{reflist Numerical libraries Java (programming language) libraries Public-domain software with source code Numerical software