TruncatedDistribution

class TruncatedDistribution(theDistribution: DistributionIfc, theCDFLowerLimit: Double, theCDFUpperLimit: Double, theLowerLimit: Double, theUpperLimit: Double, name: String? = null) : Distribution, GetRVariableIfc

Constructs a truncated distribution based on the provided distribution

Parameters

theDistribution

the distribution to truncate, must not be null

theCDFLowerLimit

The lower limit of the range of support of the distribution

theCDFUpperLimit

The upper limit of the range of support of the distribution

theLowerLimit

The truncated lower limit (if moved in from cdfLL), must be >= cdfLL

theUpperLimit

The truncated upper limit (if moved in from cdfUL), must be <= cdfUL

name

an optional name/label

Constructors

Link copied to clipboard
constructor(theDistribution: DistributionIfc, distDomain: Interval, truncInterval: Interval, name: String? = null)
constructor(theDistribution: DistributionIfc, theCDFLowerLimit: Double, theCDFUpperLimit: Double, theLowerLimit: Double, theUpperLimit: Double, name: String? = null)

Properties

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

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

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 instance(): TruncatedDistribution
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

Get the parameters for the truncated distribution

open override fun parameters(params: DoubleArray)

Sets the parameters of the truncated distribution cdfLL = parameter0 cdfUL = parameters1 truncLL = parameters2 truncUL = parameters3

Link copied to clipboard
open override fun randomVariable(stream: RNStreamIfc): RVariableIfc
open fun randomVariable(streamNum: Int): RVariableIfc
Link copied to clipboard
fun setDistribution(distribution: DistributionIfc, cdfLL: Double, cdfUL: Double, truncLL: Double, truncUL: Double)
Link copied to clipboard
fun setLimits(cdfLL: Double, cdfUL: Double, truncLL: Double, truncUL: Double)
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
open override fun variance(): Double

Returns the variance of the distribution if defined