Tu banner alternativo

SuanShu numerical library

In today's world, SuanShu numerical library represents a very important issue that impacts people's daily lives. Since its emergence, SuanShu numerical library has generated controversy and debate, arousing widespread interest in society. Over the years, SuanShu numerical library has evolved and become a topic of study and research that covers various areas, from science and technology to politics and culture. In this article, we will explore in depth the importance and impact of SuanShu numerical library in today's society, analyzing its influence on different aspects of daily life and offering a comprehensive view of this phenomenon that continues to generate interest and attention around the world.

Tu banner alternativo
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

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

See also

References

  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 artificial advisor for dynamic classification of objects". Annales Universitatis Mariae Curie-Skłodowska, 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.