Numerical computing in Java with NM Dev

Build numerical applications with runnable examples, mathematical explanations and executable checks. Start with a small calculation, then explore linear algebra, statistics, integration and optimization.

Get started · Explore eleven tutorials · Compare benchmark results

Solve a real system in a few lines

Matrix a = new DenseMatrix(new double[][]{{3, 1}, {1, 2}});
Vector b = new DenseVector(new double[]{9, 8});
Vector x = new LinearSystemSolver(1e-12)
    .solve(a).getParticularSolution(b);
// x = (2, 3). Matrix and vector indices start at 1.

Read the complete linear-system tutorial for imports, setup, runnable source and residual checks.

Choose your next example

Goal Tutorial
Solve equations and fit data Linear systems, QR and SVD least squares
Understand variation PCA, linear regression
Compute integrals and probabilities Simpson quadrature, normal probabilities
Find a minimum BFGS optimization, constrained quadratic programming

Explore performance with evidence

Open the interactive benchmarks to compare eleven libraries, select visible libraries and inspect individual timings. Read the methodology and exact backend settings before interpreting the results. Source code, measurements and archived runs are available for reproduction.

Install and evaluate NM Dev

Examples require Java, Maven, GitHub Packages credentials and a valid NM Dev license. Follow the setup guide or visit NM Dev for evaluation and licensing.

NM Dev API reference · Example source on GitHub