# Classic Noise Processes

This section describes the available NoiseProcess types. Note that all keyword arguments are splatted into the NoiseProcess constructor, and thus options like reset are available on the pre-built processes.

DiffEqNoiseProcess.WienerProcessFunction

The WienerProcess, also known as Brownian motion, or the noise in the Langevin equation, is the stationary process with white noise increments and a distribution N(0,dt). The constructor is:

WienerProcess(t0,W0,Z0=nothing;kwargs...)
WienerProcess!(t0,W0,Z0=nothing;kwargs...)
DiffEqNoiseProcess.WienerProcess!Function

The WienerProcess, also known as Brownian motion, or the noise in the Langevin equation, is the stationary process with white noise increments and a distribution N(0,dt). The constructor is:

WienerProcess(t0,W0,Z0=nothing;kwargs...)
WienerProcess!(t0,W0,Z0=nothing;kwargs...)
DiffEqNoiseProcess.RealWienerProcessFunction

The RealWienerProcess is a Brownian motion that is forced to be real-valued. While the normal WienerProcess becomes complex valued if W0 is complex, this verion is real valued for when you want to, for example, solve an SDE defined by complex numbers where the noise is in the reals.

RealWienerProcess(t0,W0,Z0=nothing;kwargs...)
RealWienerProcess!(t0,W0,Z0=nothing;kwargs...)
DiffEqNoiseProcess.RealWienerProcess!Function

The RealWienerProcess is a Brownian motion that is forced to be real-valued. While the normal WienerProcess becomes complex valued if W0 is complex, this verion is real valued for when you want to, for example, solve an SDE defined by complex numbers where the noise is in the reals.

RealWienerProcess(t0,W0,Z0=nothing;kwargs...)
RealWienerProcess!(t0,W0,Z0=nothing;kwargs...)
DiffEqNoiseProcess.OrnsteinUhlenbeckProcessFunction

a Ornstein-Uhlenbeck process which is a Wiener process defined by the stochastic differential equation

$$$dX_t = \theta (\mu - X_t) dt + \sigma dW_t$$$

The OrnsteinUhlenbeckProcess is distribution exact (meaning, not a numerical solution of the stochastic differential equation, and instead follows the exact distribution properties). The constructor is:

OrnsteinUhlenbeckProcess(Θ,μ,σ,t0,W0,Z0=nothing;kwargs...)
OrnsteinUhlenbeckProcess!(Θ,μ,σ,t0,W0,Z0=nothing;kwargs...)
DiffEqNoiseProcess.OrnsteinUhlenbeckProcess!Function

A Ornstein-Uhlenbeck process which is a Wiener process defined by the stochastic differential equation

$$$dX_t = \theta (\mu - X_t) dt + \sigma dW_t$$$

The OrnsteinUhlenbeckProcess is distribution exact (meaning, not a numerical solution of the stochastic differential equation, and instead follows the exact distribution properties). The constructor is:

OrnsteinUhlenbeckProcess(Θ,μ,σ,t0,W0,Z0=nothing;kwargs...)
OrnsteinUhlenbeckProcess!(Θ,μ,σ,t0,W0,Z0=nothing;kwargs...)
DiffEqNoiseProcess.GeometricBrownianMotionProcessFunction

A GeometricBrownianMotion process is a Wiener process with constant drift μ and constant diffusion σ. I.e. this is the solution of the stochastic differential equation

$$$dX_t = \mu X_t dt + \sigma X_t dW_t$$$

The GeometricBrownianMotionProcess is distribution exact (meaning, not a numerical solution of the stochastic differential equation, and instead follows the exact distribution properties). It can be back interpolated exactly as well. The constructor is:

GeometricBrownianMotionProcess(μ,σ,t0,W0,Z0=nothing;kwargs...)
GeometricBrownianMotionProcess!(μ,σ,t0,W0,Z0=nothing;kwargs...)
DiffEqNoiseProcess.GeometricBrownianMotionProcess!Function

A GeometricBrownianMotion process is a Wiener process with constant drift μ and constant diffusion σ. I.e. this is the solution of the stochastic differential equation

$$$dX_t = \mu X_t dt + \sigma X_t dW_t$$$

The GeometricBrownianMotionProcess is distribution exact (meaning, not a numerical solution of the stochastic differential equation, and instead follows the exact distribution properties). It can be back interpolated exactly as well. The constructor is:

GeometricBrownianMotionProcess(μ,σ,t0,W0,Z0=nothing;kwargs...)
GeometricBrownianMotionProcess!(μ,σ,t0,W0,Z0=nothing;kwargs...)
DiffEqNoiseProcess.CorrelatedWienerProcessFunction

One can define a CorrelatedWienerProcess which is a Wiener process with correlations between the Wiener processes. The constructor is:

CorrelatedWienerProcess(Γ,t0,W0,Z0=nothing;kwargs...)
CorrelatedWienerProcess!(Γ,t0,W0,Z0=nothing;kwargs...)

where Γ is the constant covariance matrix.

DiffEqNoiseProcess.CorrelatedWienerProcess!Function

One can define a CorrelatedWienerProcess which is a Wiener process with correlations between the Wiener processes. The constructor is:

CorrelatedWienerProcess(Γ,t0,W0,Z0=nothing;kwargs...)
CorrelatedWienerProcess!(Γ,t0,W0,Z0=nothing;kwargs...)

where Γ is the constant covariance matrix.

DiffEqNoiseProcess.SimpleWienerProcessFunction

The SimpleWienerProcess, also known as Brownian motion, or the noise in the Langevin equation, is the stationary process with white noise increments and a distribution N(0,dt). The constructor is:

SimpleWienerProcess(t0,W0,Z0=nothing;kwargs...)
SimpleWienerProcess(t0,W0,Z0=nothing;kwargs...)

Unlike WienerProcess, this uses the SimpleNoiseProcess and thus does not support adaptivity, but is slightly more lightweight.

DiffEqNoiseProcess.SimpleWienerProcess!Function

The SimpleWienerProcess, also known as Brownian motion, or the noise in the Langevin equation, is the stationary process with white noise increments and a distribution N(0,dt). The constructor is:

SimpleWienerProcess(t0,W0,Z0=nothing;kwargs...)
SimpleWienerProcess(t0,W0,Z0=nothing;kwargs...)

Unlike WienerProcess, this uses the SimpleNoiseProcess and thus does not support adaptivity, but is slightly more lightweight.

DiffEqNoiseProcess.CompoundPoissonProcessType

https://www.math.wisc.edu/~anderson/papers/AndPostleap.pdf Incorporating postleap checks in tau-leaping J. Chem. Phys. 128, 054103 (2008); https://doi.org/10.1063/1.2819665

DiffEqNoiseProcess.CompoundPoissonProcess!Type

https://www.math.wisc.edu/~anderson/papers/AndPostleap.pdf Incorporating postleap checks in tau-leaping J. Chem. Phys. 128, 054103 (2008); https://doi.org/10.1063/1.2819665

## Bridges

DiffEqNoiseProcess.BrownianBridgeFunction

A BrownianBridge process is a Wiener process with a pre-defined start and end value. This process is distribution exact and back be back interpolated exactly as well. The constructor is:

BrownianBridge(t0,tend,W0,Wend,Z0=nothing,Zend=nothing;kwargs...)
BrownianBridge!(t0,tend,W0,Wend,Z0=nothing,Zend=nothing;kwargs...)

where W(t0)=W₀, W(tend)=Wend, and likewise for the Z process if defined.

DiffEqNoiseProcess.BrownianBridge!Function

A BrownianBridge process is a Wiener process with a pre-defined start and end value. This process is distribution exact and back be back interpolated exactly as well. The constructor is:

BrownianBridge(t0,tend,W0,Wend,Z0=nothing,Zend=nothing;kwargs...)
BrownianBridge!(t0,tend,W0,Wend,Z0=nothing,Zend=nothing;kwargs...)

where W(t0)=W₀, W(tend)=Wend, and likewise for the Z process if defined.

Missing docstring.

Missing docstring for DiffEqNoiseProcess.GeometricBrownianBridge. Check Documenter's build log for details.

Missing docstring.

Missing docstring for DiffEqNoiseProcess.GeometricBrownianBridge!. Check Documenter's build log for details.

Missing docstring.

Missing docstring for DiffEqNoiseProcess.CompoundPoissonBridge. Check Documenter's build log for details.

Missing docstring.

Missing docstring for DiffEqNoiseProcess.CompoundPoissonBridge!. Check Documenter's build log for details.