Class RandomProcess
- java.lang.Object
-
- dev.nm.stat.stochasticprocess.univariate.random.RandomProcess
-
- All Implemented Interfaces:
RandomNumberGenerator
,Seedable
- Direct Known Subclasses:
RandomWalk
public abstract class RandomProcess extends Object implements RandomNumberGenerator
This interface represents a univariate random process a.k.a. stochastic process. Given a probability space (Ω, F, P), a random process (or stochastic process) with state space X is a collection of X-valued random variables indexed by a set T ("time"). That is, a stochastic process F is a collection {Ft: t ∈ T} where each Ft is an X-valued random variable. According to the Lévy-Khintchine representation, for a stochastic process, we have the Lévy triplet:- the absolutely continuous part such that the increment dB is proportional to the square root of time increment dt;
- See Also:
- Lévy-Itō decomposition
-
-
Constructor Summary
Constructors Constructor Description RandomProcess(TimeGrid timeGrid)
Construct a univariate random process.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected double
dB(double dt)
Get a Brownian motion increment.protected double
nextTime()
Get the next time point in the time grid.void
seed(long... seeds)
Seed the random number/vector/scenario generator to produce repeatable experiments.double
time()
Get the current time.protected double
Zt()
Get a Gaussian innovation.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface dev.nm.stat.random.rng.univariate.RandomNumberGenerator
nextDouble
-
-
-
-
Constructor Detail
-
RandomProcess
public RandomProcess(TimeGrid timeGrid)
Construct a univariate random process.- Parameters:
timeGrid
- the time points
-
-
Method Detail
-
seed
public void seed(long... seeds)
Description copied from interface:Seedable
Seed the random number/vector/scenario generator to produce repeatable experiments.
-
time
public double time()
Get the current time.- Returns:
- the current time;
NaN
ifnextTime()
is not already called
-
nextTime
protected double nextTime()
Get the next time point in the time grid. This advances the internal clock.- Returns:
- the next time point in the time grid
-
Zt
protected double Zt()
Get a Gaussian innovation.- Returns:
- a Gaussian innovation
-
dB
protected double dB(double dt)
Get a Brownian motion increment.- Parameters:
dt
- the time increment- Returns:
- a Brownian motion increment
-
-