SSJ
3.3.1
Stochastic Simulation in Java
|
This is a VarianceGammaProcess for which the successive random numbers are used in a different order to generate the sample path. More...
Public Member Functions | |
VarianceGammaProcessAlternate (double s0, double theta, double sigma, double nu, RandomStream stream) | |
VarianceGammaProcessAlternate (double s0, BrownianMotion BM, GammaProcess Gamma) | |
double [] | generatePath () |
Generates the sample path by using the uniform random numbers in an alternate way, and returns the path of the VG process. | |
Public Member Functions inherited from VarianceGammaProcess | |
VarianceGammaProcess (double s0, double theta, double sigma, double nu, RandomStream stream) | |
Constructs a new VarianceGammaProcess with parameters \(\theta= \mathtt{theta}\), \(\sigma= \mathtt{sigma}\), \(\nu= \mathtt{nu}\) and initial value \(S(t_0) = \mathtt{s0}\). More... | |
VarianceGammaProcess (double s0, BrownianMotion BM, GammaProcess Gamma) | |
Constructs a new VarianceGammaProcess . More... | |
double | nextObservation () |
Generates the observation for the next time. More... | |
double [] | generatePath () |
Generates and returns the path. More... | |
double [] | generatePath (double[] uniform01) |
Similar to the usual generatePath() , but here the uniform random numbers used for the simulation must be provided to the method. More... | |
void | resetStartProcess () |
Resets the observation index and counter to 0 and applies the resetStartProcess method to the BrownianMotion and the GammaProcess objects used to generate this process. | |
void | setParams (double s0, double theta, double sigma, double nu) |
Sets the parameters \(S(t_0) =\) s0 , \(\theta=\) theta , \(\sigma=\) sigma and \(\nu=\) nu of the process. More... | |
double | getTheta () |
Returns the value of the parameter \(\theta\). | |
double | getSigma () |
Returns the value of the parameter \(\sigma\). | |
double | getNu () |
Returns the value of the parameter \(\nu\). | |
void | setObservationTimes (double t[], int d) |
Sets the observation times on the VarianceGammaProcess as usual, but also sets the observation times of the underlying GammaProcess. More... | |
void | setStream (RandomStream stream) |
Resets the umontreal.ssj.rng.RandomStream ’s. More... | |
RandomStream | getStream () |
Returns the random stream of the BrownianMotion process, which should be the same as for the GammaProcess. | |
BrownianMotion | getBrownianMotion () |
Returns a reference to the inner BrownianMotion. | |
GammaProcess | getGammaProcess () |
Returns a reference to the inner GammaProcess. | |
Public Member Functions inherited from StochasticProcess | |
void | setObservationTimes (double[] T, int d) |
Sets the observation times of the process to a copy of T , with. More... | |
void | setObservationTimes (double delta, int d) |
Sets equidistant observation times at \(t_j = j\delta\), for. More... | |
double [] | getObservationTimes () |
Returns a reference to the array that contains the observation times. More... | |
int | getNumObservationTimes () |
Returns the number \(d\) of observation times, excluding the time \(t_0\). | |
abstract double [] | generatePath () |
Generates, returns, and saves the sample path \(\{X(t_0), X(t_1), \dots, X(t_d)\}\). More... | |
double [] | generatePath (RandomStream stream) |
Same as generatePath() , but first resets the stream to stream . | |
double [] | getPath () |
Returns a reference to the last generated sample path \(\{X(t_0), ... , X(t_d)\}\). More... | |
void | getSubpath (double[] subpath, int[] pathIndices) |
Returns in subpath the values of the process at a subset of the observation times, specified as the times \(t_j\) whose indices. More... | |
double | getObservation (int j) |
Returns \(X(t_j)\) from the current sample path. More... | |
void | resetStartProcess () |
Resets the observation counter to its initial value \(j=0\), so that the current observation \(X(t_j)\) becomes \(X(t_0)\). More... | |
boolean | hasNextObservation () |
Returns true if \(j<d\), where \(j\) is the number of observations of the current sample path generated since the last call to resetStartProcess. More... | |
double | nextObservation () |
Generates and returns the next observation \(X(t_j)\) of the stochastic process. More... | |
int | getCurrentObservationIndex () |
Returns the value of the index \(j\) corresponding to the time. More... | |
double | getCurrentObservation () |
Returns the value of the last generated observation \(X(t_j)\). | |
double | getX0 () |
Returns the initial value \(X(t_0)\) for this process. | |
void | setX0 (double s0) |
Sets the initial value \(X(t_0)\) for this process to s0 , and reinitializes. | |
abstract void | setStream (RandomStream stream) |
Resets the random stream of the underlying generator to stream . | |
abstract RandomStream | getStream () |
Returns the random stream of the underlying generator. | |
int [] | getArrayMappingCounterToIndex () |
Returns a reference to an array that maps an integer \(k\) to \(i_k\), the index of the observation \(S(t_{i_k})\) corresponding to the \(k\)-th observation to be generated for a sample path of this process. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from VarianceGammaProcess | |
void | init () |
Protected Member Functions inherited from StochasticProcess | |
void | init () |
Protected Attributes inherited from VarianceGammaProcess | |
GammaProcess | randomTime |
BrownianMotion | BM |
double | theta |
Protected Attributes inherited from StochasticProcess | |
boolean | observationTimesSet = false |
double | x0 = 0.0 |
int | d = -1 |
int | observationIndex = 0 |
int | observationCounter = 0 |
double [] | t |
double [] | path |
int [] | observationIndexFromCounter |
Package Attributes inherited from VarianceGammaProcess | |
double | sigma |
double | nu |
This is a VarianceGammaProcess for which the successive random numbers are used in a different order to generate the sample path.
The first one is used for the first generated value of the gamma process, the second one for the first generated value of the Brownian process, the third one for the second generated value of the gamma process, the fourth one for the second value of the Brownian process, and so on. Only the order in which the uniform random numbers are used in the method generatePath
differs. These numbers are generated at the beginning and then reordered. This can make a difference when we use RQMC methods.