java.lang.Object
org.ojalgo.random.process.GaussianProcess
- All Implemented Interfaces:
RandomProcess<Normal>
A Gaussian process is a
RandomProcess 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 RandomProcess.simulate(int, int, double) you must call addObservation(Double, double) one or more times.
- Author:
- apete
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.ojalgo.random.process.RandomProcess
RandomProcess.SimulationResults -
Constructor Summary
ConstructorsConstructorDescriptionGaussianProcess(GaussianField.Covariance<Double> covarFunc) GaussianProcess(GaussianField.Mean<Double> meanFunc, GaussianField.Covariance<Double> covarFunc) -
Method Summary
Modifier and TypeMethodDescriptionbooleanaddObservation(Double x, double y) voidgetDistribution(double evaluationPoint) getDistribution(Double... evaluationPoint) final doubleEquivalent to callingRandomProcess.getDistribution(double)with argumant1.0, and thenDistribution.getExpected().final doublegetLowerConfidenceQuantile(double confidence) The same thing can be achieved by first callingRandomProcess.getDistribution(double)with argumant1.0, and thenContinuousDistribution.getQuantile(double)(but with different input argument).final doubleEquivalent to callingRandomProcess.getDistribution(double)with argumant1.0, and thenDistribution.getStandardDeviation().final doublegetUpperConfidenceQuantile(double confidence) The same thing can be achieved by first callingRandomProcess.getDistribution(double)with argumant1.0, and thenContinuousDistribution.getQuantile(double)(but with different input argument).doublegetValue()final doubleEquivalent to callingRandomProcess.getDistribution(double)with argumant1.0, and thenDistribution.getVariance().voidsetValue(double newValue) simulate(int numberOfRealisations, int numberOfSteps, double stepSize) Returns an collection of sample sets.doublestep(double stepSize, double standardGaussianInnovation) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.ojalgo.random.process.RandomProcess
simulate
-
Constructor Details
-
GaussianProcess
-
GaussianProcess
public GaussianProcess(GaussianField.Mean<Double> meanFunc, GaussianField.Covariance<Double> covarFunc)
-
-
Method Details
-
calibrate
public void calibrate() -
getDistribution
- Specified by:
getDistributionin interfaceRandomProcess<Normal>- Parameters:
evaluationPoint- How far into the future?- Returns:
- The distribution for the process value at that future time.
-
getDistribution
-
getValue
public double getValue() -
setValue
public void setValue(double newValue) -
step
public double step(double stepSize, double standardGaussianInnovation) -
addObservation
-
simulate
public RandomProcess.SimulationResults simulate(int numberOfRealisations, int numberOfSteps, double stepSize) Description copied from interface:RandomProcessReturns an collection of sample sets. The array has numberOfSteps elements, and each sample set has numberOfRealisations samples.- Returns:
- An array of sample sets. The array has aNumberOfSteps elements, and each sample set has aNumberOfRealisations samples.
-
getExpected
public final double getExpected()Equivalent to callingRandomProcess.getDistribution(double)with argumant1.0, and thenDistribution.getExpected(). -
getLowerConfidenceQuantile
public final double getLowerConfidenceQuantile(double confidence) The same thing can be achieved by first callingRandomProcess.getDistribution(double)with argumant1.0, and thenContinuousDistribution.getQuantile(double)(but with different input argument). -
getStandardDeviation
public final double getStandardDeviation()Equivalent to callingRandomProcess.getDistribution(double)with argumant1.0, and thenDistribution.getStandardDeviation(). -
getUpperConfidenceQuantile
public final double getUpperConfidenceQuantile(double confidence) The same thing can be achieved by first callingRandomProcess.getDistribution(double)with argumant1.0, and thenContinuousDistribution.getQuantile(double)(but with different input argument). -
getVariance
public final double getVariance()Equivalent to callingRandomProcess.getDistribution(double)with argumant1.0, and thenDistribution.getVariance().
-