Skip to contents

Models

monty_model()
Create basic model
monty_model_combine()
Combine two models
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

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

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

Tools

monty_observer()
Create observer
monty_packer()
Build a parameter packer
monty_domain_expand()
Expand (and check) domain against a packer
with_trace_random()
Trace random number calls

Random numbers

Utilities for working with random numbers. This code is all imported from dust, and we’ll change it to better suit the needs in this package.

monty_rng
Monty Random Number Generator
monty_rng_distributed_state() monty_rng_distributed_pointer()
Create a set of distributed seeds
monty_rng_pointer
Create pointer to random number generator stream