Package nl.tudelft.simulation.dsol.tutorial.section41

## Class MM1Queue41Model

- java.lang.Object
- - org.djutils.event.EventProducer
  - - nl.tudelft.simulation.dsol.model.AbstractDSOLModel<Double,​Double,​SimTimeDouble,​S>
    - - nl.tudelft.simulation.dsol.model.AbstractDSOLModel.TimeDouble<DEVSSimulator.TimeDouble>
      - - nl.tudelft.simulation.dsol.tutorial.section41.MM1Queue41Model

All Implemented Interfaces:
  `Serializable`, `DSOLModel<Double,​Double,​SimTimeDouble,​DEVSSimulator.TimeDouble>`, `DSOLModel.TimeDouble<DEVSSimulator.TimeDouble>`, `EventProducerInterface`

    public class MM1Queue41Model
    extends AbstractDSOLModel.TimeDouble<DEVSSimulator.TimeDouble>

The M/M/1 example as published in Simulation Modeling and Analysis by A.M. Law & W.D. Kelton section 1.4 and 2.4.

Copyright (c) 2002-2022 Delft University of Technology, Jaffalaan 5, 2628 BX Delft, the Netherlands. All rights reserved. See for project information https://simulation.tudelft.nl. The DSOL project is distributed under a three-clause BSD-style license, which can be found at https://simulation.tudelft.nl/dsol/3.0/license.html.

Author:
  Peter Jacobs
See Also:
  Serialized Form

### Nested Class Summary

### Nested classes/interfaces inherited from class nl.tudelft.simulation.dsol.model.AbstractDSOLModel

`AbstractDSOLModel.TimeDouble<S extends SimulatorInterface.TimeDouble>, AbstractDSOLModel.TimeDoubleUnit<S extends SimulatorInterface.TimeDoubleUnit>, AbstractDSOLModel.TimeFloat<S extends SimulatorInterface.TimeFloat>, AbstractDSOLModel.TimeFloatUnit<S extends SimulatorInterface.TimeFloatUnit>, AbstractDSOLModel.TimeLong<S extends SimulatorInterface.TimeLong>`

### Nested classes/interfaces inherited from interface nl.tudelft.simulation.dsol.model.DSOLModel

`DSOLModel.TimeDouble<S extends SimulatorInterface<Double,​Double,​SimTimeDouble>>, DSOLModel.TimeDoubleUnit<S extends SimulatorInterface<Time,​Duration,​SimTimeDoubleUnit>>, DSOLModel.TimeFloat<S extends SimulatorInterface<Float,​Float,​SimTimeFloat>>, DSOLModel.TimeFloatUnit<S extends SimulatorInterface<FloatTime,​FloatDuration,​SimTimeFloatUnit>>, DSOLModel.TimeLong<S extends SimulatorInterface<Long,​Long,​SimTimeLong>>`

### Field Summary

Fields
`(package private) SimTally.TimeDouble` `dN` tally dN.
`(package private) SimPersistent.TimeDouble` `qN` persistent qN.
`(package private) Utilization<Double,​Double,​SimTimeDouble>` `uN` utilization uN.

### Fields inherited from class nl.tudelft.simulation.dsol.model.AbstractDSOLModel

`inputParameterMap, outputStatistics, simulator, streamInformation`

### Fields inherited from class org.djutils.event.EventProducer

`eventProducerImpl`

### Fields inherited from interface org.djutils.event.EventProducerInterface

`FIRST_POSITION, LAST_POSITION`

### Constructor Summary

Constructors
`MM1Queue41Model​(DEVSSimulator.TimeDouble simulator)`

### Method Summary

All Methods Instance Methods Concrete Methods
`void` `constructModel()`
`Serializable` `getSourceId()`

### Methods inherited from class nl.tudelft.simulation.dsol.model.AbstractDSOLModel

`addInputParameter, getInputParameter, getInputParameterMap, getOutputStatistics, getSimulator, getStreamInformation, setStreamInformation`

### Methods inherited from class org.djutils.event.EventProducer

`addListener, addListener, addListener, addListener, fireEvent, fireEvent, fireEvent, fireEvent, fireEvent, fireEvent, fireEvent, fireEvent, fireEvent, fireEvent, fireEvent, fireTimedEvent, fireTimedEvent, fireTimedEvent, fireTimedEvent, fireTimedEvent, fireTimedEvent, fireTimedEvent, fireTimedEvent, fireTimedEvent, fireTimedEvent, fireUnverifiedEvent, fireUnverifiedEvent, fireUnverifiedEvent, fireUnverifiedEvent, fireUnverifiedEvent, fireUnverifiedEvent, fireUnverifiedEvent, fireUnverifiedEvent, fireUnverifiedEvent, fireUnverifiedEvent, fireUnverifiedEvent, fireUnverifiedTimedEvent, fireUnverifiedTimedEvent, fireUnverifiedTimedEvent, fireUnverifiedTimedEvent, fireUnverifiedTimedEvent, fireUnverifiedTimedEvent, fireUnverifiedTimedEvent, fireUnverifiedTimedEvent, fireUnverifiedTimedEvent, fireUnverifiedTimedEvent, fireUnverifiedTimedEvent, getEventTypesWithListeners, getListenerReferences, hasListeners, numberOfListeners, removeAllListeners, removeAllListeners, removeListener`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Methods inherited from interface nl.tudelft.simulation.dsol.model.DSOLModel

`getDefaultStream, getInputParameterMap, getOutputStatistics, getSimulator, getStream, getStreamInformation, getStreams, resetStreams, setStreamInformation`

### Field Detail

#### dN

    SimTally.TimeDouble dN

tally dN.

#### qN

    SimPersistent.TimeDouble qN

persistent qN.

#### uN

    Utilization<Double,​Double,​SimTimeDouble> uN

utilization uN.

### Constructor Detail

#### MM1Queue41Model

    public MM1Queue41Model​(DEVSSimulator.TimeDouble simulator)

Parameters:
  `simulator` - DEVSSimulator.TimeDouble; the simulator

### Method Detail

#### constructModel

    public void constructModel()
                        throws SimRuntimeException

Throws:
  `SimRuntimeException`

#### getSourceId

    public Serializable getSourceId()

Specified by:
  `getSourceId` in interface `EventProducerInterface`
Specified by:
  `getSourceId` in class `EventProducer`