25package umontreal.ssj.stochprocess;
27import umontreal.ssj.rng.*;
28import umontreal.ssj.probdist.*;
29import umontreal.ssj.randvar.*;
30import umontreal.ssj.stat.*;
31import umontreal.ssj.stat.list.*;
80 super(s0, mu, nu, Ggen);
85 double[] uniformsV =
new double[d];
86 arrayTime = BMPCA.getObservationTimes();
88 double[] BMpath = BMPCA.generatePath();
90 for (i = 0; i < d; i++) {
91 sigma = BMPCA.getSigma() * Math.sqrt(arrayTime[i + 1] - arrayTime[i]);
95 for (i = 0; i < d; i++) {
96 path[i + 1] = path[i] +
GammaDist.
inverseF(mu2dtOverNu[i], muOverNu, 10, uniformsV[i]);
99 observationCounter = d;
104 double[] uniformsV =
new double[d];
105 arrayTime = BMPCA.getObservationTimes();
107 double[] BMpath = BMPCA.generatePath(uniform01);
109 for (i = 0; i < d; i++) {
110 sigma = BMPCA.getSigma() * Math.sqrt(arrayTime[i + 1] - arrayTime[i]);
114 for (i = 0; i < d; i++) {
115 path[i + 1] = path[i] +
GammaDist.
inverseF(mu2dtOverNu[i], muOverNu, 10, uniformsV[i]);
117 observationIndex = d;
118 observationCounter = d;
127 throw new UnsupportedOperationException(
"nextObservation is not implemented in GammaProcessPCA");
135 throw new UnsupportedOperationException(
"nextObservation is not implemented in GammaProcessPCA");
153 super.setObservationTimes(t, d);
154 BMPCA.setObservationTimes(t, d);
161 public void setParams(
double s0,
double mu,
double nu) {
162 super.setParams(s0, mu, nu);
163 BMPCA.setParams(0.0, 0.0, Math.sqrt(nu));
173 super.setStream(stream);
Extends the class ContinuousDistribution for the gamma distribution tjoh95a (page 337) with shape pa...
double inverseF(double u)
Returns the inverse distribution function .
Extends the class ContinuousDistribution for the normal distribution (e.g., tjoh95a (page 80)).
static double cdf01(double x)
Same as cdf(0, 1, x).
This class implements random variate generators for the gamma distribution.
A Brownian motion process sampled using the principal component decomposition (PCA) fgla04a,...
void setStream(RandomStream stream)
Resets the random stream of the normal generator to stream.
void setParams(double s0, double mu, double nu)
Sets the parameters s0, and to new values, and sets the variance parameters of the BrownianMotionPC...
void setObservationTimes(double[] t, int d)
Sets the observation times of the GammaProcessPCA and the.
double[] generatePath()
Generates, returns and saves the path .
GammaProcessPCA(double s0, double mu, double nu, GammaGen Ggen)
Constructs a new GammaProcessPCA with parameters , and initial value .
double[] generatePath(double[] uniform01)
Generates, returns and saves the path .
BrownianMotionPCA getBMPCA()
Returns the BrownianMotionPCA that is included in the.
double nextObservation()
This method is not implemented in this class since the path cannot be generated sequentially.
GammaProcessPCA(double s0, double mu, double nu, RandomStream stream)
Constructs a new GammaProcessPCA with parameters , and initial value .
void setStream(RandomStream stream)
Resets the umontreal.ssj.rng.RandomStream of the gamma generator and the umontreal....
double nextObservation(double nextT)
This method is not implemented in this class since the path cannot be generated sequentially.
GammaProcess(double s0, double mu, double nu, RandomStream stream)
Constructs a new GammaProcess with parameters , and initial value .
This interface defines the basic structures to handle multiple streams of uniform (pseudo)random numb...