Point processes in Rust
Point processes are stochastic processes with a wide range of applications in seismology, epidemiology, or financial mathematics. They are utilized to model the arrival of random events as a function of time.
This crate provides functions to simulate point processes in Rust, built on top of ndarray
.
Time-dependent processes
The following time-dependent point processes have been implemented within the timedependent
module:
- Poisson point process (homogeneous and inhomogeneous, with custom function)
- Hawkes processes, with an exponential kernel (refer to Dassios and Zhao's 2013 paper (1))
n-dimensional processes
The generalized
module provides functions for higher-dimensional processes.
For now, only Poisson processes have been implemented.
which takes a reference to a domain, that is a subset of n-dimensional space implemented with the Set
trait (see API docs), and returns a 2-dimensional array which is a set of point events in d-dimensional space falling into the domain.
Examples
Some examples require a yet unpublished version of milliams' plotlib graphing library. To build them, you'll need to checkout plotlib locally:
To run the examples, do for instance
Some will produce SVG image files in the examples
directory.
The examples show how to use the API.