NegativeBinomial

The number of failures before the rth success in a sequence of independent Bernoulli trials with probability p of success on each trial. The range of this random variable is {0, 1, 2, ....}

Parameters

theProbSuccess

The success probability, must be in range (0,1)

theNumSuccesses

The desired number of successes

name

an optional name/label

Constructors

Link copied to clipboard
constructor(parameter: DoubleArray)

Constructs a NegativeBinomial using the supplied parameters

constructor(theProbSuccess: Double = 0.5, theNumSuccesses: Double = 1.0, name: String? = null)

Types

Link copied to clipboard
object Companion

Properties

Link copied to clipboard
open override val id: Int
Link copied to clipboard
open override var label: String?
Link copied to clipboard
val mode: Int

the mode of the distribution

Link copied to clipboard
open override val name: String
Link copied to clipboard

the desired number of successes to wait for

Link copied to clipboard
Link copied to clipboard

the probability of failure, 1-p

Link copied to clipboard

the probability of success, p

Link copied to clipboard
Link copied to clipboard

indicates whether pmf and cdf calculations are done by recursive (iterative) algorithm based on logarithms or via beta incomplete function and binomial coefficients.

Link copied to clipboard
open override val rvParameters: RVParameters

the parameters for this type of random variable

Functions

Link copied to clipboard

Returns an array of probabilities each representing F(x_i). The CDF is evaluated for each point in the input array x and the probabilities are returned in the returned array.

open fun cdf(interval: Interval): Double

Returns the probability of being in the interval, F(upper limit) - F(lower limit) Be careful, this is Pr{lower limit < = X < = upper limit} which includes the lower limit and has implications if the distribution is discrete

open fun cdf(x1: Double, x2: Double): Double

Returns the Pr{x1 <= X <= x2} for the distribution. Be careful, this is Pr{x1 <= X <= x2} which includes the lower limit and has implications if the distribution is discrete

open override fun cdf(x: Double): Double

Returns the F(x) = Pr{X <= x} where F represents the cumulative distribution function

fun cdf(j: Int): Double

Computes the cumulative probability distribution function for given value of failures

Link copied to clipboard

Computes the complementary cumulative probability distribution function for given value of x. This is P{X > x}

Link copied to clipboard
open override fun firstOrderLossFunction(x: Double): Double

Computes the first order loss function for the function for given value of x, G1(x) = Emax(X-x,0)

Link copied to clipboard
open override fun instance(): NegativeBinomial
Link copied to clipboard
open fun invCDF(probabilities: DoubleArray): DoubleArray

Computes x_p where P(X <= x_p) = p for the supplied array of probabilities. Requires that the values within the supplied array are in (0,1)

open override fun invCDF(p: Double): Double

Provides the inverse cumulative distribution function for the distribution

Link copied to clipboard
open override fun mean(): Double

Returns the mean or expected value of a distribution

Link copied to clipboard
open override fun parameters(): DoubleArray

Gets the parameters as an array parameters0 is probability of success parameters1 is number of desired successes

open override fun parameters(params: DoubleArray)

Sets the parameters as an array parameters0 is probability of success parameters1 is number of desired successes

Link copied to clipboard
open override fun pmf(i: Int): Double

Returns the prob of getting x failures before the rth success where r is the desired number of successes parameter

open fun pmf(x: Double): Double

If x is not an integer value, then the probability must be zero otherwise pmf(int x) is used to determine the probability

open fun pmf(range: IntRange): Map<Int, Double>

Computes the probabilities associated with the range and returns the value and the probability as a map with the integer value as the key and the probability as the related value.

Link copied to clipboard
open override fun probIn(range: IntRange): Double

Computes the sum of the probabilities over the provided range. If the range is closed a..b then the end point b is included in the sum. If the range is open a..<b then the point b is not included in the sum.

Link copied to clipboard
open override fun randomVariable(stream: RNStreamIfc): RVariableIfc
open fun randomVariable(streamNum: Int): RVariableIfc
Link copied to clipboard
open override fun secondOrderLossFunction(x: Double): Double

Computes the 2nd order loss function for the distribution function for given value of x, G2(x) = (1/2)Emax(X-x,0)*max(X-x-1,0)

Link copied to clipboard

Returns the standard deviation for the distribution as the square root of the variance if it exists

Link copied to clipboard

Computes Pr{x < X } for the distribution.

Link copied to clipboard
open override fun toString(): String
Link copied to clipboard
open override fun variance(): Double

Returns the variance of the distribution if defined