diff --git a/Cargo.toml b/Cargo.toml index 76df573..70da932 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "metromc" -version = "0.1.0" +version = "0.2.0" edition = "2021" authors = ["Emil Koutanov"] license = "MIT" diff --git a/README.md b/README.md index 8b6d3c6..13ee80a 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ `metromc` === -Markov chain Monte Carlo sampling using the _Independence Metropolis-Hastings_ algorithm with uniform transition kernel. +Markov chain Monte Carlo (MCMC) sampling using the _Independence Metropolis-Hastings_ algorithm with uniform transition kernel. [![Crates.io](https://img.shields.io/crates/v/metromc?style=flat-square&logo=rust)](https://crates.io/crates/metromc) [![docs.rs](https://img.shields.io/badge/docs.rs-metromc-blue?style=flat-square&logo=docs.rs)](https://docs.rs/metromc) @@ -8,8 +8,17 @@ Markov chain Monte Carlo sampling using the _Independence Metropolis-Hastings_ a Uses the [tinyrand](https://github.com/obsidiandynamics/tinyrand) RNG to sample at a rate of ~50M samples/sec. +Supports the following distributions: + +* [Gaussian/Normal](https://en.wikipedia.org/wiki/Normal_distribution) +* [Gamma](https://en.wikipedia.org/wiki/Gamma_distribution) +* [Pareto](https://en.wikipedia.org/wiki/Pareto_distribution) +* [Beta](https://en.wikipedia.org/wiki/Beta_distribution) + +It is easy to add more univariate distributions by supplying an implementation of a PDF or wrapping one from the excellent [statrs](https://crates.io/crates/statrs) crate. + # Example -Draw samples from the Gaussian distribution. +Draw samples from the Gaussian distribution using MCMC. ```rust use std::ops::RangeInclusive;