Class DesExperimentModel

java.lang.Object
org.djutils.event.LocalEventProducer
nl.tudelft.simulation.dsol.model.AbstractDsolModel<Double,DevsSimulatorInterface<Double>>
nl.tudelft.simulation.dsol.demo.des.experiment.DesExperimentModel
All Implemented Interfaces:
DsolModel<Double,DevsSimulatorInterface<Double>>, org.djutils.event.EventProducer

class DesExperimentModel extends AbstractDsolModel<Double,DevsSimulatorInterface<Double>>
Model with a generator that generates entities.

Copyright (c) 2025-2025 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://https://simulation.tudelft.nl/dsol/docs/latest/license.html.

Author:
Alexander Verbraeck
  • Constructor Details

    • DesExperimentModel

      public DesExperimentModel(DevsSimulatorInterface<Double> simulator)
      Constructor for the model. This provides the distribution functions and the simulator to the model.
      Parameters:
      simulator - the simulator on which to schedule new events
  • Method Details

    • constructModel

      public void constructModel() throws SimRuntimeException
      Throws:
      SimRuntimeException
    • generate

      protected void generate()
      Generate one or more entities, based on batchSize.
    • startProcess

      protected void startProcess(Entity entity)
      Start the processing of an entity by the server.
      Parameters:
      entity - the entity to be processed
    • endProcess

      protected void endProcess(Entity entity)
      End the processing of an entity by the server.
      Parameters:
      entity - the entity that is being processed, and should leave the server
    • getTallyTimeInQueue

      SimTally<Double> getTallyTimeInQueue()
      Returns:
      tallyTimeInQueue
    • getTallyTimeInSystem

      SimTally<Double> getTallyTimeInSystem()
      Returns:
      tallyTimeInSystem
    • getPersistentUtilization

      SimPersistent<Double> getPersistentUtilization()
      Returns:
      persistentUtilization
    • getPersistentQueueLength

      SimPersistent<Double> getPersistentQueueLength()
      Returns:
      persistentQueueLength