Package-level declarations

Types

Link copied to clipboard
class AggregateCounter(parent: ModelElement, name: String? = null) : Counter

An aggregate time-weighted response observes many other time weighted response variables. Whenever any variable that it observes changes, it is incremented by or decremented by the amount of the change. Thus, the resulting response is the total (aggregate) of all the underlying observed responses at any time.

Link copied to clipboard
class AggregateTWResponse(parent: ModelElement, name: String? = null) : TWResponse

An aggregate time-weighted response observes many other time weighted response variables. Whenever any variable that it observes changes, it is incremented by or decremented by the amount of the change. Thus, the resulting response is the total (aggregate) of all the underlying observed responses at any time.

Link copied to clipboard
class BernoulliVariable<T>(parent: ModelElement, bernoulliRV: BernoulliRV, success: T, failure: T, name: String? = null) : RandomElement
Link copied to clipboard
fun interface CountActionIfc

An action that can occur when a count hits its limit

Link copied to clipboard
open class Counter(parent: ModelElement, name: String? = null, initialValue: Double = 0.0, countLimit: Double = Double.POSITIVE_INFINITY) : ModelElement, CounterIfc, CounterCIfc, DoublePairEmitterIfc
Link copied to clipboard
interface CounterCIfc

While Counter instances should in general be declared as private within model elements, this interface provides the modeler the ability to declare a public property that returns an instance with limited ability to change and use the underlying Counter, prior to running the model.

Link copied to clipboard
Link copied to clipboard
class HistogramResponse(theResponse: Response, val cacheSize: Int = 512, name: String? = ":Histogram") : ModelElement

Tabulates a histogram for the indicated response.

Link copied to clipboard
class HistoricalVariable(parent: ModelElement, val pathToFile: Path, val arrayOption: Boolean = true, val stoppingOption: StoppingOption = StoppingOption.STOP, val stopValue: Double = Double.MAX_VALUE, defaultValue: GetValueIfc? = null, name: String? = null) : ModelElement, GetValueIfc, PreviousValueIfc

A historical variable returns values read from a file. These variables might be used in place of a RandomVariable to supply data values into a simulation model. The user must supply a valid path to the file pathToFile. The file should be a text file with a single column of double values, each value on a new row. All values in the file must be convertable to instances of Double.

Link copied to clipboard
class IndicatorResponse(predicate: (Double) -> Boolean, observedResponse: Response, name: String? = null) : Response
Link copied to clipboard
interface InitialValueIfc

General property for getting (and setting) an initial value

Link copied to clipboard
class IntegerFrequencyResponse(parent: ModelElement, name: String, lowerLimit: Int = Int.MIN_VALUE, upperLimit: Int = Int.MAX_VALUE, myIntegerFrequency: IntegerFrequency = IntegerFrequency( name = "${name}_Frequency", lowerLimit = lowerLimit, upperLimit = upperLimit )) : ModelElement, IntegerFrequencyIfc

This class tabulates the frequency associated with the integers presented to it based on the attached variable. Every value presented is interpreted as an integer For every value presented a count is maintained. There could be space/time performance issues if the number of different values presented is large. Use lowerLimit and upperLimit to limit the values that can be observed. Values lower than the lower limit are counted as underflow and values greater than the upper limit are counted as overflow.

Link copied to clipboard
interface LastValueIfc
Link copied to clipboard
class LevelResponse(variable: Variable, theLevel: Double, stats: Boolean = true, theName: String? = null) : ModelElement

Collects statistics on whether a specific level associated with a variable is maintained.

Link copied to clipboard
class MaxResponse(observedResponse: Response) : Response
Link copied to clipboard
Link copied to clipboard

While RandomVariable instances should in general be declared as private within model elements, this interface provides the modeler the ability to declare a public property that returns an instance with limited ability to change and use the underlying RandomVariable, prior to running the model.

Link copied to clipboard
open class RandomVariable(parent: ModelElement, rSource: RandomIfc, name: String? = null) : RandomElement, RandomIfc, PreviousValueIfc

A random variable (RandomVariable) is a function that maps a probability space to a real number. A random variable uses a RandomIfc to provide the underlying mapping to a real number via the value() method.

Link copied to clipboard
interface RangeIfc
Link copied to clipboard

A response represents an observational type variable for which observational statistics are automatically collected when the value of the response variable is assigned.

Link copied to clipboard
class ResponseBatchingElement(modelElement: ModelElement, name: String? = null) : ModelElement

Controls the batching of Response variables within the Model. Used by StatisticalBatchingElement.

Link copied to clipboard

While Response instances should in general be declared as private within model elements, this interface provides the modeler the ability to declare a public property that returns an instance with limited ability to change and use the underlying Response, prior to running the model.

Link copied to clipboard
class ResponseFunction(function: (Double) -> Double, observedResponse: Response, name: String? = null) : Response

Applies the supplied function to the observed value of the response and tallies statistics on the functional.

Link copied to clipboard
class ResponseInterval(parent: ModelElement, theDuration: Double, label: String?, aResponseSchedule: ResponseSchedule? = null) : ModelElement

This class represents an interval of time over which statistical collection should be performed. An interval is specified by providing an interval start time and a duration. The duration must be finite and greater than zero.

Link copied to clipboard
class ResponseSchedule(parent: ModelElement, theScheduleStartTime: Double = 0.0, repeatSchedule: Boolean = true, name: String? = null) : ModelElement

This class allows the creation of a schedule that represents a list of intervals of time. The starting length of a schedule is 0.0. The length of a schedule depends upon the intervals added to it. The schedule's length encompasses the furthest interval added. If no intervals are added, then the schedule only has its start time and no response collection will occur.

Link copied to clipboard

Represents a ResponseInterval placed on a ResponseSchedule.

Link copied to clipboard
fun interface StopActionIfc
Link copied to clipboard
Link copied to clipboard
interface TimeOfChangeIfc
Link copied to clipboard
Link copied to clipboard
class TWBatchingElement(modelElement: ModelElement, batchingInterval: Double = 0.0, name: String? = null) : ModelElement

This class controls the batching of time weighted variables within the Model.

Link copied to clipboard
open class TWResponse(parent: ModelElement, name: String? = null, initialValue: Double = 0.0, allowedDomain: Interval = Interval(0.0, Double.POSITIVE_INFINITY), countLimit: Double = Double.POSITIVE_INFINITY) : Response, TimeWeightedIfc, TWResponseCIfc

A time-weighted response represents a time-persistent type variable for which time-based statistics are automatically collected when the value of the response variable is assigned.

Link copied to clipboard
Link copied to clipboard
class TWResponseFunction(function: (Double) -> Double, observedResponse: TWResponse, name: String? = null) : TWResponse

Applies the supplied function to the observed value of the time-weighted response variable and collects time-weighted statistics on the functional.

Link copied to clipboard
interface ValueIfc

General property for getting and setting a value

Link copied to clipboard
open class Variable(parent: ModelElement, theInitialValue: Double = 0.0, allowedDomain: Interval = Interval(), name: String? = null) : ModelElement, VariableIfc

Simulation models may use many variables that define the state of the component/system being modeled. Within the context of stochastic simulation the values of the variables may change during the execution of a replication (i.e. the generation of a sample path). It is important to ensure that each replication starts in the same state (i.e. with the same initial conditions). Thus, if variable values change during the replication, the value of the variable must be returned to its initial value prior to the execution of the next replication. The purpose of this class is to facilitate the specification of the initial value and the resetting to the initial value prior to the experiments and the subsequent replications. Additionally, the value of a variable might need to be constrained to a legally specified range or interval. Because of the random nature of simulation, model logic might attempt to set the value of a variable outside its legal set of values. This class allows the specification of a valid interval for the variable. If the user attempts to set the value outside this interval, then an exception will be thrown. This facilitates validation of the model.

Link copied to clipboard
class WeightedResponse(parent: ModelElement, name: String? = null) : Response

A weighted response observes many other response variables. Whenever any response variable that it observes changes, it is assigned the underlying value of the response. Thus, observed responses that change more often occur more in the observed sample and thus contribute more 'weight' to the overall mean response. This, in essence, produces a weighted average across the observed responses.

Link copied to clipboard
interface WeightIfc

General property for getting (and setting) a weight associated with a value

Link copied to clipboard

An interface for accessing within replication statistics Within replication statistics can be observation or time weighted. No variance information is provided due to the fact that the standard generate variance estimator is likely to be biased because of within replication correlation.