Skip to contents

Models

monty_model()
Create basic model
monty_model_combine()
Combine two models
monty_model_split()
Split a combined model
monty_model_function()
Create monty_model from a function computing density
monty_model_properties()
Describe model properties

Functions for working with models

monty_model_density()
Compute log density
monty_model_gradient()
Compute gradient of log density
monty_model_direct_sample()
Directly sample from a model

Example

monty_example()
Example models

Domain specific language

monty_dsl()
Domain Specific Language for monty
monty_dsl_error_explain()
Explain monty error
monty_differentiation()
Differentiate expressions

Advanced

monty_dsl_distributions()
Information about supported distributions
monty_dsl_parse_distribution()
Parse distribution expression

Draw samples from a model

monty_sample()
Sample from a model
monty_sample_continue()
Continue sampling

Samplers

monty_sampler_random_walk()
Random Walk Sampler
monty_sampler_adaptive()
Adaptive Metropolis-Hastings Sampler
monty_sampler_hmc()
Create HMC
monty_sampler_nested_random_walk()
Nested Random Walk Sampler
monty_sampler_nested_adaptive()
Nested Adaptive Metropolis-Hastings Sampler
monty_sampler_parallel_tempering()
Parallel Tempering Sampler

Chain runners

monty_runner_serial()
Run MCMC chain in series
monty_runner_parallel()
Run MCMC chain in parallel
monty_runner_simultaneous()
Run MCMC chains simultaneously
monty_runner_callr()
Run MCMC chains in parallel with callr

Manually run chains

monty_sample_manual_prepare()
Prepare to sample with manual scheduling
monty_sample_manual_run()
Run sample with manual scheduling
monty_sample_manual_info()
Get information about manually scheduled samples
monty_sample_manual_collect()
Collect manually run samples
monty_sample_manual_cleanup()
Clean up samples
monty_sample_manual_prepare_continue()
Prepare to continue sampling with manual scheduling

Tools

monty_observer()
Create observer
monty_packer()
Build a packer
monty_packer_grouped()
Build a nested packer
monty_domain_expand()
Expand (and check) domain against a packer
monty_samples_thin()
Thin samples
with_trace_random()
Trace random number calls

Random numbers

monty_rng_create()
Create a monty random number generator
monty_rng_state() monty_rng_set_state()
Get and set random number state
monty_rng_jump() monty_rng_long_jump()
Jump random number state
monty_random_real() monty_random_n_real()
Sample from Uniform(0, 1)
monty_random_exponential_rate() monty_random_n_exponential_rate() monty_random_exponential_mean() monty_random_n_exponential_mean()
Sample from exponential distribution
monty_random_poisson() monty_random_n_poisson()
Sample from Poisson distribution
monty_random_beta() monty_random_n_beta()
Sample from beta distribution
monty_random_binomial() monty_random_n_binomial()
Sample from binomial distribution
monty_random_cauchy() monty_random_n_cauchy()
Sample from Cauchy distribution
monty_random_gamma_scale() monty_random_n_gamma_scale() monty_random_gamma_rate() monty_random_n_gamma_rate()
Sample from a gamma distribution. There are two parameterisations here, one in terms of rate, and one in terms of scale.
monty_random_negative_binomial_prob() monty_random_n_negative_binomial_prob() monty_random_negative_binomial_mu() monty_random_n_negative_binomial_mu()
Sample from negative binomial distribution
monty_random_normal() monty_random_n_normal()
Sample from normal distribution
monty_random_uniform() monty_random_n_uniform()
Sample from uniform distribution
monty_random_beta_binomial_prob() monty_random_n_beta_binomial_prob() monty_random_beta_binomial_ab() monty_random_n_beta_binomial_ab()
Sample from beta-binomial distribution
monty_random_hypergeometric() monty_random_n_hypergeometric()
Sample from hypergeometric distribution
monty_random_truncated_normal() monty_random_n_truncated_normal()
Sample from truncated normal
monty_random_log_normal() monty_random_n_log_normal()
Sample from log-normal
monty_random_weibull() monty_random_n_weibull()
Sample from Weibull