Overview | Package | Class | Tree | Deprecated | Index | Help
| SSJ V. 2.1.1.
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## umontreal.iro.lecuyer.stochprocess
Class GammaProcessPCA

    java.lang.Object
      umontreal.iro.lecuyer.stochprocess.StochasticProcess
          umontreal.iro.lecuyer.stochprocess.GammaProcess
              umontreal.iro.lecuyer.stochprocess.GammaProcessPCA

Direct Known Subclasses:
  GammaProcessPCABridge

    public class GammaProcessPCA

extends GammaProcess

Represents a gamma process sampled using the principal component analysis (PCA). To simulate the gamma process at times t0 < t1 < ... < td by PCA sampling, a Brownian motion {W(t), t >= 0} with mean 0 and variance parameter ν is first generated at times t0 < t1 < ... < td by PCA sampling (see class `BrownianMotionPCA`). The independent increments W(tj) - W(tj-1) of this process are then transformed into independent U(0, 1) random variates Vj via

Vj = Φ((τ_j-τ_j-1)1/2[W(τj) - W(τj-1)]), j = 1,..., s

Finally, the increments of the Gamma process are computed as Y(tj) - Y(tj-1) = G-1(Vj), where G is the gamma distribution function.

Field Summary

Fields inherited from class umontreal.iro.lecuyer.stochprocess.StochasticProcess
`path`

Constructor Summary
`GammaProcessPCA(double s0, double mu, double nu, GammaGen Ggen)` Constructs a new `GammaProcessPCA` with parameters μ = [tex2html_wrap_inline221], ν = [tex2html_wrap_inline223] and initial value S(t0) = [tex2html_wrap_inline225].
`GammaProcessPCA(double s0, double mu, double nu, RandomStream stream)` .

Method Summary
`double[]` | `generatePath()` Generates, returns and saves the path {X(t0), X(t1),…, X(td)}.
`double[]` | `generatePath(double[] uniform01)` Generates, returns and saves the path {X(t0), X(t1),…, X(td)}.
`BrownianMotionPCA` | `getBMPCA()` Returns the `BrownianMotionPCA` that is included in the `GammaProcessPCA` object.
`double` | `nextObservation()` This method is not implemented in this class since the path cannot be generated sequentially.
`double` | `nextObservation(double nextT)` This method is not implemented in this class since the path cannot be generated sequentially.
`void` | `setObservationTimes(double[] t, int d)` Sets the observation times of the `GammaProcessPCA` and the `BrownianMotionPCA`.
`void` | `setParams(double s0, double mu, double nu)` Sets the parameters `s0`, μ and ν to new values, and sets the variance parameters of the `BrownianMotionPCA` to ν.
`void` | `setStream(RandomStream stream)` Resets the `RandomStream` of the gamma generator and the `RandomStream` of the inner `BrownianMotionPCA` to `stream`.

Methods inherited from class umontreal.iro.lecuyer.stochprocess.GammaProcess
`getMu, getNu, getStream`

Methods inherited from class umontreal.iro.lecuyer.stochprocess.StochasticProcess
`generatePath, getArrayMappingCounterToIndex, getCurrentObservation, getCurrentObservationIndex, getNbObservationTimes, getObservation, getObservationTimes, getPath, getSubpath, getX0, hasNextObservation, resetStartProcess, setObservationTimes`

Methods inherited from class java.lang.Object
`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### GammaProcessPCA

    public GammaProcessPCA(double s0,
                           double mu,
                           double nu,
                           RandomStream stream)

  . Constructs a new `GammaProcessPCA` with parameters μ = , ν = and initial value S(t0) = . The random variables are created using `stream`. Note that the same `RandomStream` is used for the `GammaProcessPCA` and for the `BrownianMotionPCA` included in this class. Both the `GammaProcessPCA` and the `BrownianMotionPCA` are generated by inversion.

### GammaProcessPCA

    public GammaProcessPCA(double s0,
                           double mu,
                           double nu,
                           GammaGen Ggen)

  Constructs a new `GammaProcessPCA` with parameters μ = [tex2html_wrap_inline221], ν = [tex2html_wrap_inline223] and initial value S(t0) = [tex2html_wrap_inline225]. All the random variables, i.e. the gamma ones and the normal ones, are created using the `RandomStream` included in the `GammaGen` `Ggen`. Note that the parameters of the `GammaGen` object are not important since the implementation forces the generator to use the correct parameters (as defined above).

Method Detail

### generatePath

    public double[] generatePath()

  Description copied from class: `GammaProcess`
  Generates, returns and saves the path {X(t0), X(t1),…, X(td)}. The gamma variates X in are generated using the `RandomStream` `stream` or the `RandomStream` included in the `GammaGen` `Ggen`.

  Overrides:
    `generatePath` in class `GammaProcess`

### generatePath

    public double[] generatePath(double[] uniform01)

  Description copied from class: `GammaProcess`
  Generates, returns and saves the path {X(t0), X(t1),…, X(td)}. This method does not use the `RandomStream` `stream` nor the `GammaGen` `Ggen`. It uses the vector of uniform random numbers U(0, 1) provided by the user and generates the path by inversion. The vector `uniform01` must be of dimension d.

  Overrides:
    `generatePath` in class `GammaProcess`

### nextObservation

    public double nextObservation()

  This method is not implemented in this class since the path cannot be generated sequentially.

  Overrides:
    `nextObservation` in class `GammaProcess`

### nextObservation

    public double nextObservation(double nextT)

  This method is not implemented in this class since the path cannot be generated sequentially.

  Overrides:
    `nextObservation` in class `GammaProcess`

### getBMPCA

    public BrownianMotionPCA getBMPCA()

  Returns the `BrownianMotionPCA` that is included in the `GammaProcessPCA` object.

### setObservationTimes

    public void setObservationTimes(double[] t,
                                    int d)

  Sets the observation times of the `GammaProcessPCA` and the `BrownianMotionPCA`.

  Overrides:
    `setObservationTimes` in class `StochasticProcess`

### setParams

    public void setParams(double s0,
                          double mu,
                          double nu)

  Sets the parameters `s0`, μ and ν to new values, and sets the variance parameters of the `BrownianMotionPCA` to ν.

  Overrides:
    `setParams` in class `GammaProcess`

### setStream

    public void setStream(RandomStream stream)

  Resets the `RandomStream` of the gamma generator and the `RandomStream` of the inner `BrownianMotionPCA` to `stream`.

  Overrides:
    `setStream` in class `GammaProcess`

Overview | Package | Class | Tree | Deprecated | Index | Help
| SSJ V. 2.1.1.
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

To submit a bug or ask questions, send an e-mail to Pierre L'Ecuyer.