Package org.ojalgo.random.process
Class GaussianProcess
- java.lang.Object
-
- org.ojalgo.random.process.AbstractProcess<D>
-
- org.ojalgo.random.process.MultipleValuesBasedProcess<Normal>
-
- org.ojalgo.random.process.GaussianProcess
-
- All Implemented Interfaces:
Process1D.ComponentProcess<Normal>
,RandomProcess<Normal>
public final class GaussianProcess extends MultipleValuesBasedProcess<Normal> implements Process1D.ComponentProcess<Normal>
A Gaussian process is aRandomProcess
where each variable has a normal distribution. In addition, every finite collection of those variables has a multivariate normal distribution.Prior to calling getDistribution(double) or MultipleValuesBasedProcess.simulate(int, int, double) you must call MultipleValuesBasedProcess.addObservation(Double, double) one or more times.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.ojalgo.random.process.RandomProcess
RandomProcess.SimulationResults
-
-
Field Summary
Fields Modifier and Type Field Description private static Normal
GENERATOR
private GaussianField<java.lang.Double>
myDelegate
-
Constructor Summary
Constructors Modifier Constructor Description private
GaussianProcess()
GaussianProcess(GaussianField.Covariance<java.lang.Double> covarFunc)
GaussianProcess(GaussianField.Mean<java.lang.Double> meanFunc, GaussianField.Covariance<java.lang.Double> covarFunc)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
calibrate()
(package private) double
doStep(double stepSize, double normalisedRandomIncrement)
(package private) MatrixStore<java.lang.Double>
getCovariances()
Normal
getDistribution(double evaluationPoint)
Normal1D
getDistribution(java.lang.Double... evaluationPoint)
(package private) double
getExpected(double stepSize)
(package private) double
getLowerConfidenceQuantile(double stepSize, double confidence)
(package private) double
getNormalisedRandomIncrement()
(package private) double
getStandardDeviation(double stepSize)
(package private) double
getUpperConfidenceQuantile(double stepSize, double confidence)
double
getValue()
(package private) double
getVariance(double stepSize)
void
setValue(double newValue)
double
step(double stepSize, double standardGaussianInnovation)
-
Methods inherited from class org.ojalgo.random.process.MultipleValuesBasedProcess
addObservation, getCurrentValue, getObservations, setCurrentValue, setObservations, simulate
-
Methods inherited from class org.ojalgo.random.process.AbstractProcess
getExpected, getLowerConfidenceQuantile, getStandardDeviation, getUpperConfidenceQuantile, getVariance, step
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.ojalgo.random.process.RandomProcess
simulate
-
-
-
-
Field Detail
-
GENERATOR
private static final Normal GENERATOR
-
myDelegate
private final GaussianField<java.lang.Double> myDelegate
-
-
Constructor Detail
-
GaussianProcess
public GaussianProcess(GaussianField.Covariance<java.lang.Double> covarFunc)
-
GaussianProcess
public GaussianProcess(GaussianField.Mean<java.lang.Double> meanFunc, GaussianField.Covariance<java.lang.Double> covarFunc)
-
GaussianProcess
private GaussianProcess()
-
-
Method Detail
-
calibrate
public void calibrate()
-
getDistribution
public Normal getDistribution(double evaluationPoint)
- Specified by:
getDistribution
in interfaceRandomProcess<Normal>
- Parameters:
evaluationPoint
- How far into the future?- Returns:
- The distribution for the process value at that future time.
-
getDistribution
public Normal1D getDistribution(java.lang.Double... evaluationPoint)
-
getValue
public double getValue()
- Specified by:
getValue
in interfaceProcess1D.ComponentProcess<Normal>
-
setValue
public void setValue(double newValue)
- Specified by:
setValue
in interfaceProcess1D.ComponentProcess<Normal>
-
step
public double step(double stepSize, double standardGaussianInnovation)
- Specified by:
step
in interfaceProcess1D.ComponentProcess<Normal>
-
doStep
double doStep(double stepSize, double normalisedRandomIncrement)
- Specified by:
doStep
in classAbstractProcess<Normal>
-
getCovariances
MatrixStore<java.lang.Double> getCovariances()
-
getExpected
double getExpected(double stepSize)
- Specified by:
getExpected
in classAbstractProcess<Normal>
-
getLowerConfidenceQuantile
double getLowerConfidenceQuantile(double stepSize, double confidence)
- Specified by:
getLowerConfidenceQuantile
in classAbstractProcess<Normal>
-
getNormalisedRandomIncrement
double getNormalisedRandomIncrement()
- Specified by:
getNormalisedRandomIncrement
in classAbstractProcess<Normal>
-
getStandardDeviation
double getStandardDeviation(double stepSize)
- Specified by:
getStandardDeviation
in classAbstractProcess<Normal>
-
getUpperConfidenceQuantile
double getUpperConfidenceQuantile(double stepSize, double confidence)
- Specified by:
getUpperConfidenceQuantile
in classAbstractProcess<Normal>
-
getVariance
double getVariance(double stepSize)
- Specified by:
getVariance
in classAbstractProcess<Normal>
-
-