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:
  • Constructor Summary

    Constructors
    Constructor
    Description
    Construct a univariate random process.
  • Method Summary

    Modifier and Type
    Method
    Description
    protected double
    dB(double dt)
    Get a Brownian motion increment.
    protected double
    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
    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 Details

    • RandomProcess

      public RandomProcess(TimeGrid timeGrid)
      Construct a univariate random process.
      Parameters:
      timeGrid - the time points
  • Method Details

    • seed

      public void seed(long... seeds)
      Description copied from interface: Seedable
      Seed the random number/vector/scenario generator to produce repeatable experiments.
      Specified by:
      seed in interface Seedable
      Parameters:
      seeds - the seeds
    • time

      public double time()
      Get the current time.
      Returns:
      the current time; NaN if nextTime() 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