# \[ANN\] AdditionalDistributions.jl v0.2.1 — Multivariate Gaussian and Student-t CDFs, benchmarks, and ecosystem examples

**URL:** <https://discourse.julialang.org/t/ann-additionaldistributions-jl-v0-2-1-multivariate-gaussian-and-student-t-cdfs-benchmarks-and-ecosystem-examples/137895>\
**Category:** Package Announcements\
**Tags:** package, announcement, statistics, distributions, probability\
**Created:** [July 1, 2026, 3:57pm UTC](https://discourse.julialang.org/t/ann-additionaldistributions-jl-v0-2-1-multivariate-gaussian-and-student-t-cdfs-benchmarks-and-ecosystem-examples/137895 "2026-07-01T15:57:31Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![Santymax98](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/santymax98/32/211772_2.png) [@Santymax98](https://discourse.julialang.org/u/Santymax98)\
**Post date:** [July 1, 2026, 3:57pm UTC](https://discourse.julialang.org/t/ann-additionaldistributions-jl-v0-2-1-multivariate-gaussian-and-student-t-cdfs-benchmarks-and-ecosystem-examples/137895/1 "2026-07-01T15:57:31Z")

</div>

Hi everyone,

I’m happy to announce `AdditionalDistributions.jl` v0.2.1.

`AdditionalDistributions.jl` extends the `Distributions.jl` ecosystem with additional univariate and multivariate probability distributions.

This announcement summarizes the v0.2 series. The main multivariate CDF functionality was introduced in v0.2.0, while v0.2.1 consolidates the release with bug fixes, compatibility updates, improved documentation, and tested ecosystem examples.

Repository:

> **[GitHub - Santymax98/AdditionalDistributions.jl: We added some Miscellaneous distributions to...](https://github.com/Santymax98/AdditionalDistributions.jl)**
>
> We added some Miscellaneous distributions to extend the repertoire of distributions in Julia implemented by Distributions.jl

Documentation:

> **[AdditionalDistributions.jl Documentation | AdditionalDistributions.jl](https://santymax98.github.io/AdditionalDistributions.jl/stable/)**
>
> Advanced and extended probability distributions for Julia, compatible with Distributions.jl.

## Main focus: multivariate rectangular probabilities

The main focus of the v0.2 series is rectangular CDF evaluation for multivariate distributions:

```julia
MvGaussian
MvTStudent

```

The package supports calls such as:

```julia
cdf(d, lower, upper)
cdf_result(d, lower, upper)

```

where `cdf_result` returns diagnostic information:

```julia
res.value # estimated probability
res.error # error estimate
res.inform # convergence/tolerance diagnostic
res.neval # number of evaluations
res.algorithm # algorithm label

```

For `MvGaussian`, the implementation uses randomized quasi-Monte Carlo methods for rectangular probabilities. The documentation includes benchmark comparisons with `MvNormalCDF.jl`, which provides a natural Julia-side reference point for multivariate normal probabilities.

For `MvTStudent`, the implementation uses a Gaussian conditional representation with a radial mixing variable. This is important because, unlike the Gaussian case, a diagonal scale matrix does not make Student-t coordinates independent: the common radial scale still induces dependence. Selected Student-t reference cases were checked against R reference values using `mvtnorm`-style parameterization with `sigma = Σ` and `delta = 0`.

## Benchmarks and reproducibility

The documentation includes benchmark and reproducibility notes for the multivariate CDF routines.

In the tested benchmark cases, the implementation shows competitive timings while remaining integrated with the `Distributions.jl` interface.

The goal is not to claim that `AdditionalDistributions.jl` replaces every specialized multivariate probability library. Rather, the goal is to provide a native Julia implementation that:

- works naturally with `Distributions.jl`,
- supports both multivariate Gaussian and Student-t rectangular probabilities,
- exposes useful diagnostic information through `cdf_result`,
- provides reproducible benchmark settings,
- and can be used directly in statistical Julia workflows.

## Tests and fixes

The v0.2 series adds and improves test coverage for the multivariate routines, including reference tests, numerical invariant tests, diagnostic API tests for `cdf_result`, keyword-control tests, selected univariate reference tests, and regression tests for previously fixed issues.

It also includes several fixes and improvements:

- improved `MvGaussian` rectangular CDF evaluation,
- improved `MvTStudent` integration controls,
- added diagnostic `cdf_result` output,
- fixed the `Lomax` quantile endpoint at `p = 1`,
- added `rand(rng, d, n)` and `length(d)` support for `MvGaussian` and `MvTStudent`,
- relaxed the `MvTStudent` wrapper type to support current `Distributions.jl` multivariate Student-t constructors,
- updated compatibility bounds for Julia, `LambertW`, `Roots`, `StatsBase`, and `Statistics`.

## Ecosystem examples

Version v0.2.1 adds tested examples showing how `AdditionalDistributions.jl` can be used with:

- `Distributions.jl`,
- `HypothesisTests.jl`,
- `Copulas.jl`,
- `Turing.jl`,
- `StatsBase.jl`.

The examples cover basic API usage, heavy-tailed risk models, count models, multivariate CDFs, multivariate hypothesis testing, copula-based modeling with `SklarDist`, and Bayesian modeling with `Turing.jl`.

The reproducible scripts are available under:

```plaintext
examples/scripts/

```

and are summarized in the documentation.

## Limitations

The `inform` flag is a numerical diagnostic.

`inform == 0` means that the requested tolerance was reached.

`inform == 1` means that the requested tolerance was not reached with the chosen computational budget. This does not necessarily mean that the result is invalid; users should inspect the reported error estimate and may need to increase `m`, relax tolerances, or adjust the integration settings.

The multivariate Student-t CDF is generally more computationally demanding than the Gaussian case, especially in higher dimensions or difficult rectangular regions.

## Installation

```julia
using Pkg
Pkg.add("AdditionalDistributions")

```

Feedback, issues, benchmark comparisons, and suggestions are very welcome.
