## Generate a dust model

Convert a small section of C++ code into a model that can be run efficiently in parallel.

dust()

Create a dust model from a C++ input file

dust_generate()

Generate dust code

dust_package()

Create dust model in package

## Interact with the dust model

Every dust model shares the same (fairly large) set of methods

dust_generator

The dust class

## Random numbers

The core of dust is a parallel random number generator. These are also described in a series of vignettes.

dust_rng

Dust Random Number Generator

dust_rng_pointer

Create pointer to random number generator stream

dust_rng_distributed_state() dust_rng_distributed_pointer()

Create a set of distributed seeds

## ODE models

Additional support for ODE (ordinary differential equation) models

dust_ode_control()

Create a dust_ode_control object.

## Run in parallel with OpenMP

Detect OpenMP support

dust_openmp_support()

Information about OpenMP support

dust_openmp_threads()

Select number of threads

## Compile on GPUs

Control compilation options for creating models to run on a GPU

dust_cuda_configuration()

Detect CUDA configuration

dust_cuda_options()

Create CUDA options

## Other

dust_data()

Process data for dust

dust_example()

Access dust's built-in examples

dust_repair_environment()

Repair dust environment