Skip to content
Statistical package
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
view move images to doc Feb 19, 2015
.gitignore update docs Jan 31, 2015
.travis.yml Update .travis.yml Jun 25, 2016 update license Feb 19, 2015 Update Feb 14, 2017
hmod.cfg fix hmod Mar 24, 2015
macros.ddoc add random numbers generators Jan 3, 2015

❗️ Atmosphere was freezed, please open an issue if you have any questions.

❗️ For random distributions please visit


Atmosphere contains Maximum Likelihood Estimation algorithms, density functions, random observations generators, etc.

Travis-CI Status

Join the chat at Coverage Status


  1. Normal variance-mean mixtures
  • Generalized hyperbolic distribution
  • Generalized variance-gamma distribution
  1. Separating mixtures of probability distributions
  • Grid methods
  • Likelihood maximization
  • Optimization over sliding window
  1. Generalized probability distributions
  • Density functions
  • Cumulative functions
  • Quantiles
  • Random observations generators
  • Maximum Likelihood Estimations (MLE)

Generalized hyperbolic distribution

Generalized variance-gamma distribution

What can I use this package for?

Atmosphere can be used for risk management in economics, finance and thermonuclear reactors ;-)

#Documentation Documentation (API) can be found here.



You need BLAS and LAPACK libraries to be installed.

If you're on Ubuntu, you can install default packages

sudo apt-get update
sudo apt-get install libblas-dev liblapack-dev 

OS X comes with the Accelerate framework built in.

There is no instruction for Windows. You are welcome to create it.

Intro to D

  1. Install D compiler.
  2. Install DUB registry
  3. Read about DUB
  4. Read about DUB package format


To use this package put the dependency into your project's dub.json into the dependencies section and the following imports into your program

import atmosphere;

If you want to write a library use detailed imports

import atmosphere.pdf;
import atmosphere.estimate.generalized_inverse_gaussian;
import atmosphere.finitemixture;
import atmosphere.mixture : MixtureOptimizer, MixtureOptimizerException;

Compilers and optimization

The DMD compiler is an easy way to start. To compile your program in release mode use the following build options

dub build --build=release


It is suggested the LLVM D Compiler be used for benchmarks. To compile your program in release mode with LDC use the following build options

dub build --build=release --compiler=ldc2

To fine-tune your program for native CPU add the following code into your dub.json:

	"dflags-ldc": ["-mcpu=native"],

For more options run ldc2 -help.

See also Atmosphere GM Test.

TODO & Contribution

Contribution is welcome.

TODO list

  • Windows instruction for BLAS & LAPACK installation.
  • MLEs for generalized gamma distribution.
  • Publication references
  • More unittests
  • Examples
  • ReadTheDocs documentation.
You can’t perform that action at this time.