Class GaussMarkov
- Namespace
- NominalSystems.Maths
- Assembly
- NominalSystems.Maths.dll
This module is used to apply a second-order bounded Gauss-Markov random walk on top of an upper level process.The intent is that the caller will perform the set methods(setUpperBounds, setNoiseMatrix, setPropMatrix) as often as they need to, call computeNextState, and then call getCurrentState cyclically.
public class GaussMarkov
- Inheritance
-
GaussMarkov
Constructors
GaussMarkov(int)
Constructor with a specific size
public GaussMarkov(int size)
Parameters
size
intThe size of the States
GaussMarkov(int, long)
Constructor with a specific size and seed for the random walk
public GaussMarkov(int size, long seed)
Parameters
Fields
CurrentState
State of the markov model
public Vector CurrentState
Field Value
NoiseMatrix
Cholesky-decomposition or matrix square root of the covariance matrix to apply errors with
public Matrix NoiseMatrix
Field Value
PropMatrix
Matrix to propagate error state with
public Matrix PropMatrix
Field Value
StateBounds
Upper bounds to use for markov
public Vector StateBounds
Field Value
Methods
ComputeNextState()
This method performs almost all of the work for the Gauss Markov random walk.It uses the current random walk configuration, propagates the current state, and then applies appropriate errors to the states to set the current error level.
public void ComputeNextState()
SetSeed(long)
Updates the Seed of the Random value to a new seed.
public void SetSeed(long seed)
Parameters
seed
longThe new seed to set the random object to