This class represents a geometric variance gamma process \(S(t)\) (see. More...
Public Member Functions | |
| GeometricVarianceGammaProcess (double s0, double theta, double sigma, double nu, double mu, RandomStream stream) | |
| Constructs a new GeometricVarianceGammaProcess with parameters. | |
| GeometricVarianceGammaProcess (double s0, double mu, VarianceGammaProcess vargamma) | |
| Constructs a new GeometricVarianceGammaProcess. | |
| double | nextObservation () |
| Generates and returns the next observation \(X(t_j)\) of the stochastic process. | |
| double[] | generatePath () |
| Generates, returns, and saves the sample path \(\{X(t_0), X(t_1), \dots,
X(t_d)\}\). | |
| void | resetStartProcess () |
| Resets the GeometricaVarianceGammaProcess, but also applies the resetStartProcess method to the VarianceGammaProcess object used to generate this process. | |
| void | setParams (double s0, double theta, double sigma, double nu, double mu) |
| Sets the parameters \(S(t_0) = \mathtt{s0}\), \(\theta=
\mathtt{theta}\), \(\sigma= \mathtt{sigma}\), \(\nu= \mathtt{nu}\) and \(\mu= \mathtt{mu}\) of the process. | |
| double | getTheta () |
| Returns the value of the parameter \(\theta\). | |
| double | getMu () |
| Returns the value of the parameter \(\mu\). | |
| double | getNu () |
| Returns the value of the parameter \(\nu\). | |
| double | getSigma () |
| Returns the value of the parameter \(\sigma\). | |
| double | getOmega () |
Returns the value of the quantity \(\omega\) defined in ( omegaEqn ). | |
| VarianceGammaProcess | getVarianceGammaProcess () |
| Returns a reference to the variance gamma process \(X\) defined in the constructor. | |
| void | setStream (RandomStream stream) |
| Resets the random stream of the underlying generator to stream. | |
| RandomStream | getStream () |
| Returns the random stream of the underlying generator. | |
| Public Member Functions inherited from umontreal.ssj.stochprocess.StochasticProcess | |
| void | setObservationTimes (double[] T, int d) |
| Sets the observation times of the process to a copy of T, with. | |
| void | setObservationTimes (double delta, int d) |
| Sets equidistant observation times at \(t_j = j\delta\), for. | |
| double[] | getObservationTimes () |
| Returns a reference to the array that contains the observation times. | |
| int | getNumObservationTimes () |
| Returns the number \(d\) of observation times, excluding the time \(t_0\). | |
| 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)\}\). | |
| 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. | |
| double | getObservation (int j) |
| Returns \(X(t_j)\) from the current sample path. | |
| 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. | |
| int | getCurrentObservationIndex () |
| Returns the value of the index \(j\) corresponding to the time. | |
| 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. | |
| 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. | |
This class represents a geometric variance gamma process \(S(t)\) (see.
[167] (page 86)). This stochastic process is defined by the equation
\[ S(t) = S(0) \mbox{ exp}(\mu t + X(t; \sigma, \nu, \theta) + \omega t), \tag{GeoVGeqn} \]
where \(X\) is a variance gamma process and
\[ \omega= (1/\nu) \mbox{ ln}( 1 - \theta\nu- \sigma^2 \nu/2). \tag{omegaEqn} \]
Definition at line 44 of file GeometricVarianceGammaProcess.java.
| umontreal.ssj.stochprocess.GeometricVarianceGammaProcess.GeometricVarianceGammaProcess | ( | double | s0, |
| double | theta, | ||
| double | sigma, | ||
| double | nu, | ||
| double | mu, | ||
| RandomStream | stream ) |
Constructs a new GeometricVarianceGammaProcess with parameters.
\(\theta= \mathtt{theta}\), \(\sigma= \mathtt{sigma}\), \(\nu= \mathtt{nu}\), \(\mu= \mathtt{mu}\) and initial value \(S(t_0) =
\mathtt{s0}\). The stream is used to generate the VarianceGammaProcess object used to implement \(X\) in ( GeoVGeqn ).
Definition at line 59 of file GeometricVarianceGammaProcess.java.
| umontreal.ssj.stochprocess.GeometricVarianceGammaProcess.GeometricVarianceGammaProcess | ( | double | s0, |
| double | mu, | ||
| VarianceGammaProcess | vargamma ) |
Constructs a new GeometricVarianceGammaProcess.
The parameters
\(\theta, \sigma, \nu\) are set to the parameters of the VarianceGammaProcess vargamma. The parameter \(\mu\) is set to mu and the initial values \(S(t_0) = \mathtt{s0}\).
Definition at line 72 of file GeometricVarianceGammaProcess.java.
| double[] umontreal.ssj.stochprocess.GeometricVarianceGammaProcess.generatePath | ( | ) |
Generates, returns, and saves the sample path \(\{X(t_0), X(t_1), \dots, X(t_d)\}\).
It can then be accessed via getPath, getSubpath, or getObservation. The generation method depends on the process type.
Reimplemented from umontreal.ssj.stochprocess.StochasticProcess.
Definition at line 89 of file GeometricVarianceGammaProcess.java.
| double umontreal.ssj.stochprocess.GeometricVarianceGammaProcess.getMu | ( | ) |
Returns the value of the parameter \(\mu\).
Definition at line 182 of file GeometricVarianceGammaProcess.java.
| double umontreal.ssj.stochprocess.GeometricVarianceGammaProcess.getNu | ( | ) |
Returns the value of the parameter \(\nu\).
Definition at line 189 of file GeometricVarianceGammaProcess.java.
| double umontreal.ssj.stochprocess.GeometricVarianceGammaProcess.getOmega | ( | ) |
Returns the value of the quantity \(\omega\) defined in ( omegaEqn ).
Definition at line 204 of file GeometricVarianceGammaProcess.java.
| double umontreal.ssj.stochprocess.GeometricVarianceGammaProcess.getSigma | ( | ) |
Returns the value of the parameter \(\sigma\).
Definition at line 196 of file GeometricVarianceGammaProcess.java.
| RandomStream umontreal.ssj.stochprocess.GeometricVarianceGammaProcess.getStream | ( | ) |
Returns the random stream of the underlying generator.
Reimplemented from umontreal.ssj.stochprocess.StochasticProcess.
Definition at line 240 of file GeometricVarianceGammaProcess.java.
| double umontreal.ssj.stochprocess.GeometricVarianceGammaProcess.getTheta | ( | ) |
Returns the value of the parameter \(\theta\).
Definition at line 175 of file GeometricVarianceGammaProcess.java.
| VarianceGammaProcess umontreal.ssj.stochprocess.GeometricVarianceGammaProcess.getVarianceGammaProcess | ( | ) |
Returns a reference to the variance gamma process \(X\) defined in the constructor.
Definition at line 212 of file GeometricVarianceGammaProcess.java.
| double umontreal.ssj.stochprocess.GeometricVarianceGammaProcess.nextObservation | ( | ) |
Generates and returns the next observation \(X(t_j)\) of the stochastic process.
The processes are usually sampled sequentially, i.e. if the last observation generated was for time
\(t_{j-1}\), the next observation returned will be for time \(t_j\). In some cases, subclasses extending this abstract class may use non-sequential sampling algorithms (such as bridge sampling). The order of generation of the \(t_j\)’s is then specified by the subclass. All the processes generated using principal components analysis (PCA) do not have this method.
Reimplemented from umontreal.ssj.stochprocess.StochasticProcess.
Definition at line 77 of file GeometricVarianceGammaProcess.java.
| void umontreal.ssj.stochprocess.GeometricVarianceGammaProcess.resetStartProcess | ( | ) |
Resets the GeometricaVarianceGammaProcess, but also applies the resetStartProcess method to the VarianceGammaProcess object used to generate this process.
Reimplemented from umontreal.ssj.stochprocess.StochasticProcess.
Definition at line 149 of file GeometricVarianceGammaProcess.java.
| void umontreal.ssj.stochprocess.GeometricVarianceGammaProcess.setParams | ( | double | s0, |
| double | theta, | ||
| double | sigma, | ||
| double | nu, | ||
| double | mu ) |
Sets the parameters \(S(t_0) = \mathtt{s0}\), \(\theta= \mathtt{theta}\), \(\sigma= \mathtt{sigma}\), \(\nu= \mathtt{nu}\) and \(\mu= \mathtt{mu}\) of the process.
Warning: This method will recompute some quantities stored internally, which may be slow if called repeatedly.
Definition at line 162 of file GeometricVarianceGammaProcess.java.
| void umontreal.ssj.stochprocess.GeometricVarianceGammaProcess.setStream | ( | RandomStream | stream | ) |
Resets the random stream of the underlying generator to stream.
Reimplemented from umontreal.ssj.stochprocess.StochasticProcess.
Definition at line 236 of file GeometricVarianceGammaProcess.java.