scalation.simulation.process
Members list
Packages
Type members
Classlikes
The Bus
class is used to collect multiple actors together for transporting. The act method must be specified in each subclass where the bus route is specified.
The Bus
class is used to collect multiple actors together for transporting. The act method must be specified in each subclass where the bus route is specified.
Value parameters
- cap
-
the capacity of this bus
- director
-
the director controlling the model
- lTime
-
the loading/unloading time
- name
-
the name of this bus
Attributes
- Supertypes
- Known subtypes
-
class UGA_Bus
The Component
trait provides basic common feature for simulation components. The list of subparts is empty for atomic components and nonempty for composite components. Identifiable has "name" the name of this component Locatable has "at" the location of this component
The Component
trait provides basic common feature for simulation components. The list of subparts is empty for atomic components and nonempty for composite components. Identifiable has "name" the name of this component Locatable has "at" the location of this component
Attributes
- Supertypes
- Known subtypes
-
class Gateclass Junctionclass Modelclass BankModelclass CallCenterModelclass EmerDeptModelclass LoopModelclass MachineModelclass OneWayStreetModelclass OneWayVehicleModelclass RoadModelclass TrafficDynModelclass TrafficLaneChangeModelclass TrafficModelclass TrafficModelTurnclass UGA_BusModelclass BankModelclass Model_MBMclass BankModelclass Pathclass Resourceclass Routeclass Sinkclass Sourceclass VSourceclass Transportclass VTransportclass WaitQueueclass WaitQueue_LCFSShow all
The Dynamics
trait supports physics models for the motion of vehicles, e.g., car-following models.
The Dynamics
trait supports physics models for the motion of vehicles, e.g., car-following models.
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
The Gate
class models the operation of gate that can open and shut. When the gate is open, entities can flow through and when shut, they cannot. They may wait in a queue or go elsewhere. A gate can model a traffic light (green => open, red => shut).
The Gate
class models the operation of gate that can open and shut. When the gate is open, entities can flow through and when shut, they cannot. They may wait in a queue or go elsewhere. A gate can model a traffic light (green => open, red => shut).
Value parameters
- cap
-
the maximum number of entities that will be released when the gate is opened
- director
-
the model/container for this gate
- line
-
the queue holding entities waiting for this gate to open
- loc
-
the location of the Gate (x, y, w, h)
- name
-
the name of the gate
- offTime
-
distribution of time that gate will be closed
- onTime
-
distribution of time that gate will be open
- shut0
-
Boolean
indicating if the gate is initially opened or closed - units
-
number of units/phases of operation
Attributes
- Companion
- object
- Supertypes
The GippsDynamics
object provides equations for the Gipps car-following model.
The GippsDynamics
object provides equations for the Gipps car-following model.
Attributes
- See also
- Supertypes
- Self type
-
GippsDynamics.type
The IDMDynamics
object provides equations for the Intelligent Driver Model (IDM) car-following model.
The IDMDynamics
object provides equations for the Intelligent Driver Model (IDM) car-following model.
Attributes
- See also
- Supertypes
- Self type
-
IDMDynamics.type
The Junction
class provides a connector between two pathways. Since Lines
and QCurves
have limitations (e.g., hard to make a loop back), a junction may be needed. Also, may be used to model road segments connected by junctions or placements of sensors.
The Junction
class provides a connector between two pathways. Since Lines
and QCurves
have limitations (e.g., hard to make a loop back), a junction may be needed. Also, may be used to model road segments connected by junctions or placements of sensors.
Value parameters
- at
-
the location of the junction (x, y, w, h)
- jTime
-
the jump-time through the junction
- name
-
the name of the junction
Attributes
- Companion
- object
- Supertypes
-
trait Recordertrait Componenttrait Locatabletrait Identifiableclass Objecttrait Matchableclass AnyShow all
The Model
class maintains a list of components making up the model and controls the flow of entities (SimActor
s) through the model, following the process-interaction world-view. It maintains a time-ordered priority queue to activate/re-activate each of the entities. Each entity (SimActor
) is implemented as a Coroutine
and may be thought of as running in its own thread.
The Model
class maintains a list of components making up the model and controls the flow of entities (SimActor
s) through the model, following the process-interaction world-view. It maintains a time-ordered priority queue to activate/re-activate each of the entities. Each entity (SimActor
) is implemented as a Coroutine
and may be thought of as running in its own thread.
Value parameters
- aniRatio
-
the ratio of simulation speed vs. animation speed
- animating
-
whether to animate the model
- full
-
generate a full report with both sample and time-persistent statistics
- height
-
the height of the animation panel
- name
-
the name of the simulation model
- reps
-
the number of independent replications to run
- width
-
the width of the animation panel
Attributes
- Companion
- object
- Supertypes
-
trait Componenttrait Locatabletrait Identifiabletrait Modelabletrait Completionclass Coroutinetrait Runnableclass Objecttrait Matchableclass AnyShow all
- Known subtypes
-
class BankModelclass CallCenterModelclass EmerDeptModelclass LoopModelclass MachineModelclass OneWayStreetModelclass OneWayVehicleModelclass RoadModelclass TrafficDynModelclass TrafficLaneChangeModelclass TrafficModelclass TrafficModelTurnclass UGA_BusModelclass BankModelclass Model_MBMclass BankModelShow all
The Model_MBM
class maintains a list of components making up the model and controls the flow of entities (SimActor
s) through the model, following the process-interaction world-view. It maintains a time-ordered priority queue to activate/re-activate each of the entities. Each entity (SimActor
) is implemented as a Scala Actor
and may be thought of as running in its own thread. This derived class replaces the default Method of Independent Replivations with the Method of Batch Means.
The Model_MBM
class maintains a list of components making up the model and controls the flow of entities (SimActor
s) through the model, following the process-interaction world-view. It maintains a time-ordered priority queue to activate/re-activate each of the entities. Each entity (SimActor
) is implemented as a Scala Actor
and may be thought of as running in its own thread. This derived class replaces the default Method of Independent Replivations with the Method of Batch Means.
Value parameters
- aniRatio
-
the ratio of simulation speed vs. animation speed
- animating
-
whether to animate the model
- full
-
generate a full report with both sample and time-persistent statistics
- nBatch
-
the number of batches to run
- name
-
the name of the simulation model
- sizeB
-
the size of each batch
Attributes
- Supertypes
-
class Modeltrait Componenttrait Locatabletrait Identifiabletrait Modelabletrait Completionclass Coroutinetrait Runnableclass Objecttrait Matchableclass AnyShow all
- Known subtypes
-
class BankModel
The Path
class provides a multi-lane pathway between two other components. The components in a Model
conceptually form a graph in which the edges are Transport
s or VTransport
s and the nodes are other Component
s. A Path
is a composite component that bundles several Transport
s or VTransport
s.
The Path
class provides a multi-lane pathway between two other components. The components in a Model
conceptually form a graph in which the edges are Transport
s or VTransport
s and the nodes are other Component
s. A Path
is a composite component that bundles several Transport
s or VTransport
s.
Value parameters
- bend
-
the bend or curvature of the
Path
(0 => line) - from
-
the starting component
- isSpeed
-
whether speed or trip-time is used for motion
- k
-
the number of lanes/transports in the path
- motion
-
the variate or dynamics model for the speed/trip-time for motion down the
Path
- name
-
the name of the path
- to
-
the ending component
Attributes
- Supertypes
The Recorder
trait allows Nodes to easily record the flow of actors/entities (e.g., vehicles) in terms of counts and optionally average speed.
The Recorder
trait allows Nodes to easily record the flow of actors/entities (e.g., vehicles) in terms of counts and optionally average speed.
Value parameters
- nt
-
the number of time intervals
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
The Resource
class provides services to entities (SimActors
). It may or may not have an associated waiting queue.
The Resource
class provides services to entities (SimActors
). It may or may not have an associated waiting queue.
Value parameters
- at
-
the location of the resource (x, y, w, h)
- line
-
the line/queue where entities wait
- name
-
the name of the resource
- serviceTime
-
the service time distribution
- units
-
the number of service units (e.g., bank tellers)
Attributes
- Companion
- object
- Supertypes
The Route
class provides a multi-stage, multi-lane pathway between two other components where the Path
s are stitched together with Junction
s.
The Route
class provides a multi-stage, multi-lane pathway between two other components where the Path
s are stitched together with Junction
s.
Value parameters
- bend
-
the bend or curvature of the
Route
(0 => line) - from
-
the starting component
- isSpeed
-
whether speed or trip-time is used for motion
- j
-
the number of paths in the route
- k
-
the number of lanes/transports in the route
- motion
-
the variate or dynamics model for the speed/trip-time for motion down the
Route
- name
-
the name of the route
- to
-
the ending component
Attributes
- Supertypes
The SimActor
abstract class represents entities that are active in the model. The act abstract method, which specifies entity behavior, must be defined for each subclass. Each SimActor
extends ScalaTion's Coroutine
class and may be roughly thought of as running in its own thread.
The SimActor
abstract class represents entities that are active in the model. The act abstract method, which specifies entity behavior, must be defined for each subclass. Each SimActor
extends ScalaTion's Coroutine
class and may be roughly thought of as running in its own thread.
Value parameters
- director
-
the director controlling the model
- label
-
the label/name of the entity (
SimActor
) - prop
-
the properties (Map) for this actor, e.g., speed, color, weight
Attributes
- Companion
- object
- Supertypes
- Known subtypes
The SimActor
companion object holds the ACTOR LIST and provides methods for adding and removing actors from the list. These methods should be called in the application models to give users full control. For example, in a traffic model, if a car stays in the same lane over a complete Route
(multiple road segments), the car should be added to the alist at the beginning of the route and removed only at the end. Any lane changes or turns will require changes in the actor list.
The SimActor
companion object holds the ACTOR LIST and provides methods for adding and removing actors from the list. These methods should be called in the application models to give users full control. For example, in a traffic model, if a car stays in the same lane over a complete Route
(multiple road segments), the car should be added to the alist at the beginning of the route and removed only at the end. Any lane changes or turns will require changes in the actor list.
Attributes
The Sink
class is used to terminate entities SimActor
s when they are finished.
The Sink
class is used to terminate entities SimActor
s when they are finished.
Value parameters
- at
-
the location of the sink (x, y, w, h)
- name
-
the name of the sink
Attributes
- Companion
- object
- Supertypes
-
trait Recordertrait Componenttrait Locatabletrait Identifiableclass Objecttrait Matchableclass AnyShow all
The Source
class is used to periodically inject entities (SimActors
) into a running simulation model. May act as an arrival generator. Source is both a simulation Component
and special SimActor
and therefore runs in own thread.
The Source
class is used to periodically inject entities (SimActors
) into a running simulation model. May act as an arrival generator. Source is both a simulation Component
and special SimActor
and therefore runs in own thread.
Value parameters
- director
-
the director controlling the model
- esubtype
-
indicator of the subtype of the entities to be made
- iArrivalTime
-
the inter-arrival time distribution
- loc
-
the location of the source (x, y, w, h)
- makeEntity
-
the function to make entities of a specified type
- name
-
the name of the source
- units
-
the number of entities to make
Attributes
The Transport
class provides a pathway between two other components. The components in a Model
conceptually form a 'graph' in which the edges are Transport
s and the nodes are other Component
s.
The Transport
class provides a pathway between two other components. The components in a Model
conceptually form a 'graph' in which the edges are Transport
s and the nodes are other Component
s.
Value parameters
- bend
-
the bend or curvature of the
Transport
(0 => line) - from
-
the starting component
- isSpeed
-
whether speed or trip-time is used for motion
- motion
-
the random variate for the speed/trip-time for motion down the
Transport
- name
-
the name of the transport
- shift1
-
the x-y shift for the transport's first end-point (from-side)
- shift2
-
the x-y shift for the transport's second end-point (to-side)
- to
-
the ending component
Attributes
- See also
-
animation.Dgraph.move2Boundary
that aligns edge with node boundaries. - Supertypes
- Known subtypes
-
class VTransport
The VSource
class is used to periodically inject entities (Vehicle
s) into a running simulation model. May act as an arrival generator. VSource is both a simulation Component
and special SimActor
and therefore runs in own thread.
The VSource
class is used to periodically inject entities (Vehicle
s) into a running simulation model. May act as an arrival generator. VSource is both a simulation Component
and special SimActor
and therefore runs in own thread.
Value parameters
- director
-
the director controlling the model
- esubtype
-
indicator of the subtype of the entities to be made
- iArrivalTime
-
the inter-arrival time distribution
- loc
-
the location of the source (x, y, w, h)
- makeEntity
-
the function to make entities of a specified type
- name
-
the name of the source
- units
-
the number of entities to make
Attributes
- Companion
- object
- Supertypes
The VTransport
class provides a variable-speed pathway between two other components. The components in a Model
conceptually form a 'graph' in which the edges are VTransport
s and the nodes are other Component
s.
The VTransport
class provides a variable-speed pathway between two other components. The components in a Model
conceptually form a 'graph' in which the edges are VTransport
s and the nodes are other Component
s.
Value parameters
- bend
-
the bend or curvature of the
VTransport
(0 => line) - from
-
the starting component
- isSpeed
-
whether speed or trip-time is used for motion
- motion
-
the dynamics model for the speed/trip-time for motion down the
VTransport
- name
-
the name of the variable-speed transport
- shift1
-
the x-y shift for the transport's first end-point (from-side)
- shift2
-
the x-y shift for the transport's second end-point (to-side)
- to
-
the ending component
Attributes
- See also
-
animation.Dgraph.move2Boundary
that aligns edge with node boundaries. - Supertypes
-
class Transporttrait Componenttrait Locatabletrait Identifiableclass Objecttrait Matchableclass AnyShow all
The Vehicle
class extends the SimActor
and represents a vehicle in motion.
The Vehicle
class extends the SimActor
and represents a vehicle in motion.
Value parameters
- director
-
the model to which this vehicle belongs
- name_
-
the name of the vehicle
Attributes
The WaitQueue
class is a wrapper for Scala's Queue
class, which supports First-Come, First-Serve 'FCSC' Queues. It adds monitoring capabilities and optional capacity restrictions. If the queue is full, entities (SimActor
s) attempting to enter the queue are 'barred'. At the model level, such entities may be (1) held in place, (2) take an alternate route, or (3) be lost (e.g., dropped call/packet).
The WaitQueue
class is a wrapper for Scala's Queue
class, which supports First-Come, First-Serve 'FCSC' Queues. It adds monitoring capabilities and optional capacity restrictions. If the queue is full, entities (SimActor
s) attempting to enter the queue are 'barred'. At the model level, such entities may be (1) held in place, (2) take an alternate route, or (3) be lost (e.g., dropped call/packet).
Value parameters
- at
-
the location of the wait-queue (x, y, w, h)
- cap
-
the capacity of the queue (defaults to unbounded)
- name
-
the name of the wait-queue
Attributes
- Companion
- object
- Supertypes
-
trait Componenttrait Locatabletrait Identifiableclass Queue[SimActor]class ArrayDeque[SimActor]trait DefaultSerializabletrait Serializabletrait IndexedBuffer[SimActor]trait IndexedSeq[SimActor]trait IndexedSeq[SimActor]class AbstractBuffer[SimActor]trait Buffer[SimActor]trait Shrinkable[SimActor]trait Growable[SimActor]trait Clearableclass AbstractSeq[SimActor]trait Seq[SimActor]trait Cloneabletrait Iterable[SimActor]class AbstractSeq[SimActor]trait Seq[SimActor]trait Equalsclass AbstractIterable[SimActor]trait Iterable[SimActor]trait IterableOnce[SimActor]class Objecttrait Matchableclass AnyShow all
The WaitQueue_LCFS
class is a wrapper for Scala's Stack
class, which supports Last-Come, First-Serve 'LCSC' Queues. It adds monitoring capabilities and optional capacity restrictions. If the queue is full, entities (SimActor
s) attempting to enter the queue are 'barred'. At the model level, such entities may be (1) held in place, (2) take an alternate route, or (3) be lost (e.g., dropped call/packet).
The WaitQueue_LCFS
class is a wrapper for Scala's Stack
class, which supports Last-Come, First-Serve 'LCSC' Queues. It adds monitoring capabilities and optional capacity restrictions. If the queue is full, entities (SimActor
s) attempting to enter the queue are 'barred'. At the model level, such entities may be (1) held in place, (2) take an alternate route, or (3) be lost (e.g., dropped call/packet).
Value parameters
- at
-
the location of the wait-queue (x, y, w, h)
- cap
-
the capacity of the LCFS queue (defaults to unbounded)
- name
-
the name of the wait-queue
Attributes
- Companion
- object
- Supertypes
-
trait Componenttrait Locatabletrait Identifiableclass Stack[SimActor]class ArrayDeque[SimActor]trait DefaultSerializabletrait Serializabletrait IndexedBuffer[SimActor]trait IndexedSeq[SimActor]trait IndexedSeq[SimActor]class AbstractBuffer[SimActor]trait Buffer[SimActor]trait Shrinkable[SimActor]trait Growable[SimActor]trait Clearableclass AbstractSeq[SimActor]trait Seq[SimActor]trait Cloneabletrait Iterable[SimActor]class AbstractSeq[SimActor]trait Seq[SimActor]trait Equalsclass AbstractIterable[SimActor]trait Iterable[SimActor]trait IterableOnce[SimActor]class Objecttrait Matchableclass AnyShow all
The WaitQueue_LCFS
companion object provides a builder method for wait-queues.
The WaitQueue_LCFS
companion object provides a builder method for wait-queues.
Attributes
- Companion
- class
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
WaitQueue_LCFS.type
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
Value members
Concrete methods
The pathTest
main function is used to test the Path
class, which is a composite class. It simulates a two-lane road in one direction.
The pathTest
main function is used to test the Path
class, which is a composite class. It simulates a two-lane road in one direction.
runMain scalation.simulation.process.pathTest
Attributes
The routeTest
main function is used to test the Route
class, which is a composite class. It simulates a two-segment, two-lane road in one direction.
The routeTest
main function is used to test the Route
class, which is a composite class. It simulates a two-segment, two-lane road in one direction.
runMain scalation.simulation.process.routeTest
Attributes
The sourceTest
main function tests the Source
class by generating several Car objects.
The sourceTest
main function tests the Source
class by generating several Car objects.
runMain scalation.simulation.process.sourceTest
Attributes
The vSourceTest
main function tests the VSource
class by generating several Car objects.
The vSourceTest
main function tests the VSource
class by generating several Car objects.
runMain scalation.simulation.process.vSourceTest