Class MassAtOrigin

All Implemented Interfaces:
Serializable, Copyable

public class MassAtOrigin extends ContinuousDistribution implements Serializable
A law with an atom of probability p0 at zero, otherwise distributed as an inner continuous law G: F(t) = p0 + (1-p0) G(t), t >= 0.

In reliability it models a unit that fails on demand with probability p0; as a service time, a fraction p0 of jobs that need no work. E[X^k] = (1-p0) E[Y^k], SCV = (1+SCV_Y)/(1-p0) - 1, L(s) = p0 + (1-p0) L_Y(s). See K. S. Trivedi, A. Bobbio, "Reliability and Availability Engineering", Cambridge Univ. Press, 2017, Sec. 3.2.10.

See Also:
  • Constructor Details

    • MassAtOrigin

      public MassAtOrigin(Distribution dist, double p0)
      Parameters:
      dist - continuous law on [0,Inf) used with probability 1-p0
      p0 - probability of the atom at zero, in [0,1)
  • Method Details

    • getInner

      public Distribution getInner()
    • getP0

      public double getP0()
    • getMean

      public double getMean()
      Description copied from class: Distribution
      Gets the mean (expected value) of this distribution.
      Specified by:
      getMean in class Distribution
      Returns:
      the mean value
    • getRate

      public double getRate()
      Description copied from class: Distribution
      Gets the rate of this distribution (inverse of mean).
      Overrides:
      getRate in class Distribution
      Returns:
      the rate value (1/mean)
    • getSCV

      public double getSCV()
      Description copied from class: Distribution
      Gets the squared coefficient of variation (SCV) of this distribution. SCV = Var(X) / E[X]^2.
      Specified by:
      getSCV in class Distribution
      Returns:
      the squared coefficient of variation
    • getVar

      public double getVar()
      Description copied from class: Distribution
      Gets the variance of this distribution. Computed as SCV * mean^2.
      Overrides:
      getVar in class Distribution
      Returns:
      the variance
    • getSkewness

      public double getSkewness()
      Description copied from class: Distribution
      Gets the skewness of this distribution. Skewness measures the asymmetry of the probability distribution.
      Specified by:
      getSkewness in class Distribution
      Returns:
      the skewness value
    • evalCDF

      public double evalCDF(double t)
      Description copied from class: Distribution
      Evaluates the cumulative distribution function (CDF) at the given point.
      Specified by:
      evalCDF in class Distribution
      Parameters:
      t - the point at which to evaluate the CDF
      Returns:
      the CDF value at point t
    • evalLST

      public double evalLST(double s)
      Description copied from class: Distribution
      Evaluate the Laplace-Stieltjes Transform at s
      Specified by:
      evalLST in class ContinuousDistribution
      Parameters:
      s - the Laplace domain variable
      Returns:
      the LST value at s
    • sample

      public double[] sample(int n, Random random)
      Description copied from class: Distribution
      Generates random samples from this distribution using the specified random generator.
      Specified by:
      sample in class Distribution
      Parameters:
      n - the number of samples to generate
      random - the random number generator to use
      Returns:
      array of random samples
    • sample

      public double[] sample(int n)
      Description copied from class: Distribution
      Generates random samples from this distribution using default random generator.
      Overrides:
      sample in class Distribution
      Parameters:
      n - the number of samples to generate
      Returns:
      array of random samples
    • getProcess

      public MatrixCell getProcess()
      Raw parameters {p0} followed by the inner law's process cells.
      Specified by:
      getProcess in class ContinuousDistribution
      Returns:
      MatrixCell with distribution-specific parameters