SuanShu numerical library

From Wikipedia, the free encyclopedia
SuanShu
Stable release
20120606 / 2012-06-06
Written inJava
TypeMath
LicenseApache License 2.0
Websitegithub.com/nmltd/SuanShu

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

Features[edit]

  • 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[edit]

SuanShu is released under the terms of the Apache License 2.0

Examples of usage[edit]

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 = [0, 5]
System.out.println(String.format("f(%f) = %f", x_min, logGamma.evaluate(x_min)));

See also[edit]

References[edit]

  1. ^ "Java Numerics: Main". math.nist.gov. Retrieved 2021-03-23.
  2. ^ "Fastest Java Matrix Multiplication | NM DEV". NM DEV | Mathematics at Your Fingertips. 2015-08-07. Retrieved 2021-08-02.
  3. ^ Möhlmann, Eike (2018). Automatic stability verification via Lyapunov functions: representations, transformations, and practical issues (phd thesis). Universität Oldenburg.
  4. ^ Christou, Ioannis T.; Vassilaras, Spyridon (2013-10-01). "A parallel hybrid greedy branch and bound scheme for the maximum distance-2 matching problem". Computers & Operations Research. 40 (10): 2387–2397. doi:10.1016/j.cor.2013.04.009. ISSN 0305-0548.
  5. ^ Łukawska, Barbara; Łukawski, Grzegorz; Sapiecha, Krzysztof (2016-10-04). "An implementation of articial advisor for dynamic classication of objects". Annales Universitatis Mariae Curie-Sklodowska, sectio AI – Informatica. 16 (1): 40. doi:10.17951/ai.2016.16.1.40. ISSN 2083-3628.
  6. ^ Ansari, Mohd Samar (2013-09-03). Non-Linear Feedback Neural Networks: VLSI Implementations and Applications. Springer. ISBN 978-81-322-1563-9.