Latest stable release JDistlib 0.10.0 Java 8+ compatible bytecode
Download JDistlib 0.10.0 — all in one ↓

Probability distributions for Java

R-grade numerical methods,
designed for concurrent Java.

JDistlib is a Java translation of R's src/nmath, adapted to avoid process-global mutable caches and extended with distributions beyond the R library. Version 0.10.0 adds a unified FP64/FP32 dense and sparse linear-algebra engine across Java CPU, oneMKL, OpenBLAS, CUDA, OpenCL, and Vulkan, with reusable factorizations and prepared operands.

Why JDistlib

A practical statistical foundation

Concurrency-aware

Numerical calls use local state. Cached random algorithms accept explicit per-stream state instead of sharing mutable global caches.

More distributions

Includes beta-binomial, Birnbaum-Saunders, Gompertz, half-normal, Kumaraswamy, triangular, Tweedie, Wishart, Zipf, and extreme-value families.

See all distributions and formulas →

Numerical utilities

Includes adaptive finite and infinite-interval integration, optimization, splines, polynomial operations, and special functions.

Multiple-testing control

Convert batches of p-values into FWER-adjusted values, FDR-adjusted values, reproducible decisions, or Storey q-values.

Read the 0.7.0+ guide →

Bayesian inference and MCMC · 0.8.0+

One gateway for a multifaceted workflow

Choose a complete CSV/JDM quick start, pure-Java model construction, feature examples, JDM or Stan source, introductory language material, or advanced sampling and diagnostics from one organized page.

Small API, familiar semantics

Use distribution functions directly

Boolean arguments follow R's lower.tail and log.p conventions. The same shape is used consistently across distribution classes.

double p = Normal.cumulative(
    1.96, 0.0, 1.0, true, false
);

double x = Normal.quantile(
    0.975, 0.0, 1.0, true, false
);

Release status · 0.10.0

Ready to underpin statistical modeling libraries

Version 0.10.0 supplies the dense, sparse, decomposition, batching, and prepared-operand primitives needed by future regression, REML, pedigree, graphical-model, and fine-mapping packages while keeping provider selection and numerical policy in one tested engine.

Review the linear-algebra release →