public class InverseGaussianProcessPCA extends InverseGaussianProcess
BrownianMotionPCA
with a covariance matrix identical to the one
of our InverseGaussianProcess is used to
generate the path of our InverseGaussianProcess. Such a path is a perfectly random path
and it is hoped that it will provide reduction
in the simulation variance when using quasi-Monte Carlo.
The method nextObservation() cannot be used with PCA decompositions since the whole path must be generated at once.
path| Constructor and Description |
|---|
InverseGaussianProcessPCA(double s0,
double delta,
double gamma,
RandomStream stream)
Constructs a new InverseGaussianProcessPCA.
|
| Modifier and Type | Method and Description |
|---|---|
double[] |
generatePath()
Generates, returns, and saves the sample path
{X(t0), X(t1),…, X(td)}.
|
double[] |
generatePath(double[] uniforms01)
Instead of using the internal stream to generate the path,
uses an array of uniforms U[0, 1).
|
BrownianMotion |
getBrownianMotionPCA()
Returns the
BrownianMotionPCA. |
RandomStream |
getStream()
Returns the random stream of the underlying generator.
|
double |
nextObservation()
Not implementable for PCA.
|
void |
setBrownianMotionPCA(BrownianMotionPCA bmPCA)
Sets the brownian motion PCA.
|
void |
setObservationTimes(double[] t,
int d)
|
void |
setStream(RandomStream stream)
Resets the random stream of the underlying generator to stream.
|
generatePath, getAnalyticAverage, getAnalyticVariance, getDelta, getGamma, getNumberOfRandomStreams, setParamsgeneratePath, getArrayMappingCounterToIndex, getCurrentObservation, getCurrentObservationIndex, getNbObservationTimes, getObservation, getObservationTimes, getPath, getSubpath, getX0, hasNextObservation, resetStartProcess, setObservationTimes, setX0public InverseGaussianProcessPCA(double s0,
double delta,
double gamma,
RandomStream stream)
public double[] generatePath()
StochasticProcessgeneratePath in class InverseGaussianProcesspublic double[] generatePath(double[] uniforms01)
NormalInverseGaussianProcess.generatePath in class InverseGaussianProcesspublic double nextObservation()
nextObservation in class InverseGaussianProcesspublic void setObservationTimes(double[] t,
int d)
setObservationTimes in class StochasticProcesspublic RandomStream getStream()
StochasticProcessgetStream in class InverseGaussianProcesspublic void setStream(RandomStream stream)
StochasticProcesssetStream in class InverseGaussianProcesspublic void setBrownianMotionPCA(BrownianMotionPCA bmPCA)
InverseGaussianProcessPCA.public BrownianMotion getBrownianMotionPCA()
BrownianMotionPCA.To submit a bug or ask questions, send an e-mail to Pierre L'Ecuyer.