## Uses of Class
jmarkov.MarkovProcess

- Packages that use MarkovProcess
  Package | Description
  --- | ---
  examples.jmarkov |
  examples.jmdp |
  examples.jphase |
  jmarkov | Provides the basic elements to model continuous time Markov chains (CTMC).
  jmarkov.basic | This package contains basic elements such as State, Event, Action that are used in jMarkov and jMDP
  jmarkov.gui | Provides classes for graphic user interface (GUI) to present the result of a model build with JMarkov.
  jmarkov.solvers | Provides classes for customizing a solver used by JMarkov to solve transient and steady state probabilities in different models.

- - ### Uses of MarkovProcess in examples.jmarkov

    Subclasses of MarkovProcess in examples.jmarkov
    Modifier and Type | Class and Description
    --- | ---
    `class` | `AccessControl2Queues` This class represents a network with 2 queues in tandem, where the second queue has a buffer of size B and the first has a unit buffer.
    `class` | `BBPhase` This is the Java implementation for the Bucket Brigades System using Phase Distribution.
    `class` | `BBPhBuf` This class is a java implementation of Bucket Brigades System using Phase Distribution and buffers among the stations.
    `class` | `BBPhBufExp` This class model a Bucket Brigades production line with phase type service times.
    `class` | `BucketBrigades` This class describes a Bucket Brigades system with no intermediate buffers, N workers and M machines with possibly uneven working velocities.
    `class` | `BucketBuffers` Model of a Bucket Brigades production system with buffers.
    `class` | `DriveThru` This class implements a Drive Thru.
    `class` | `ErlangQueue` This class implements a system with N servers with erlang services.
    `class` | `HiperExQueue` This class implements a system with one server with PH service.
    `class` | `Jackson` This class represents a "Closed Jackson Network" with numStations multi-server workstations and N entities in the system.
    `class` | `Kanban` This class implements a Kanban system with one card.
    `class` | `PHLine` This class implements a system with two tandem servers, each one with a PH service.
    `class` | `PickBlockNarrow` This class represents a Narrow Aisle Picking System with 2 pickers, n picklocs and a infinity:1 pick/walk speed ratio.
    `class` | `PickBlockNarrowCont` This class represents a Narrow Aisle Picking System with 2 pickers n picklocs and exponential picking and walking times, each time can be different for each picker.
    `class` | `PickBlockNarrowSlow` This class represents a Narrow Aisle Picking System with 2 pickers n picklocs and a 1:1 pick/walk speed ratio.
    `class` | `PickBlockWide` This class represents a Wide Aisle Picking System with 2 pickers n picklocs and a infinity:1 pick/walk speed ratio.
    `class` | `PickBlockWideContKPickers_V3` This class represents a Wide Aisle Picking System with 2 pickers n picklocs and exponential picking and walking times, each time is different for each picker.
    `class` | `PickBlockWideSlow` This class represents a Wide Aisle Picking System with 2 pickers n picklocs and a 1:1 pick/walk speed ratio.
    `class` | `QueueMEk1` This example represents a queueing system with Poisson arrivals at rate lambda' if the system is empty, and a rate lambda otherwise.
    `class` | `QueueMH2k1` This example represents a queueing system with Poisson arrivals at rate $\lambda’$ if the system is empty, and a rate $\lambda$ otherwise.
    `class` | `QueueMM1N` This class implements an M/M/1/N queue.
    `class` | `QueueMM2dN` This class represents a system with 2 different exponential servers with rates mu1 and mu2, respectively, and arrival rate lambda.
    `class` | `QueueMMKdN` This class represents is a system with K different exponential servers with rates mu1, mu2, etc, respectively, and arrival rate lambda.
    `class` | `QueuePhPh2` This class implements a system whit two tandem servers each one with a phase service.
    `class` | `Web` This is an example of a web server that can receive different M types of items and can serve N simultaneous items with a maximum queue capacity of MaxQueue.

  - ### Uses of MarkovProcess in examples.jmdp

    Methods in examples.jmdp with parameters of type MarkovProcess
    Modifier and Type | Method and Description
    --- | ---
    `void` | InvLevel.`computeMOPs(MarkovProcess mp)`

  - ### Uses of MarkovProcess in examples.jphase

    Subclasses of MarkovProcess in examples.jphase
    Modifier and Type | Class and Description
    --- | ---
    `class` | `PhaseSystem`

  - ### Uses of MarkovProcess in jmarkov

    Subclasses of MarkovProcess in jmarkov
    Modifier and Type | Class and Description
    --- | ---
    `class` | `GeomProcess<Sub extends State,E extends Event>` The class GeomProcess represents a continuos or discrete Quasi Birth and Death process.
    `class` | `SimpleMarkovProcess<S extends State,E extends Event>`

    Methods in jmarkov with parameters of type MarkovProcess
    Modifier and Type | Method and Description
    --- | ---
    `void` | GeomRelState.`computeMOPs(MarkovProcess mp)`
    `void` | GeomState.`computeMOPs(MarkovProcess mp)`
    `int` | GeomState.`setMOP(MarkovProcess mp, java.lang.String mopName, double value)`

  - ### Uses of MarkovProcess in jmarkov.basic

    Methods in jmarkov.basic with parameters of type MarkovProcess
    Modifier and Type | Method and Description
    --- | ---
    `void` | PropertiesState.`computeMOPs(MarkovProcess mp)` By default it computes the long run average for each property. the user should override this method in order to compute more meaningful measures of performance.
    `void` | StateEvent.`computeMOPs(MarkovProcess<?,?> model)`
    `abstract void` | State.`computeMOPs(MarkovProcess<?,?> model)` This method should be implemented in order to compute all the measures of performance MOPs.
    `double` | State.`getMOP(java.lang.String mopName, MarkovProcess<?,?> model)` Gets the value of the MOP with this name, by calling `getMOP(int)```
    `int` | State.`setMOP(MarkovProcess<?,?> model, java.lang.String mopName, double value)` Sets the value of the MOP with this name.

  - ### Uses of MarkovProcess in jmarkov.gui

    Methods in jmarkov.gui that return MarkovProcess
    Modifier and Type | Method and Description
    --- | ---
    `MarkovProcess` | InfoPanel.`getMP()` Return the SimpleMarkovProcess associted with this GUI.

    Methods in jmarkov.gui with parameters of type MarkovProcess
    Modifier and Type | Method and Description
    --- | ---
    `void` | MarkovGUI.`loadMP(MarkovProcess<?,?> mp)` Loads the given SimpleMarkovProcess in the GUI
    `void` | InfoPanel.`setMP(MarkovProcess mp)` Sets the MarkovProcess and shows the corresponding information.

    Constructors in jmarkov.gui with parameters of type MarkovProcess
    Constructor and Description
    `MarkovGUI(MarkovProcess mp)` Creates GUI with thr given SimpleMarkovProcess.

  - ### Uses of MarkovProcess in jmarkov.solvers

    Methods in jmarkov.solvers that return MarkovProcess
    Modifier and Type | Method and Description
    --- | ---
    `MarkovProcess` | Solver.`getMP()` Returns the Markov process currently being solved by this solver.

    Constructors in jmarkov.solvers with parameters of type MarkovProcess
    Constructor and Description
    `GeometricSolver(MarkovProcess mp)` Builds a Geometrix Solver with the given SimpleMarkovProcess.
    `GeometrixSolver(MarkovProcess mp)` Builds a Geometrix Solver with the given SimpleMarkovProcess.
    `JamaSolver(MarkovProcess mp)`
    `JamaTransientSolver(MarkovProcess mp)` Default constructor
    `MtjSolver(MarkovProcess mp)` Default constructor.
    `MtjSolver(MarkovProcess mp, MtjSolver.EnumSolver solver)` Construct a solver for the given SimpleMarkovProcess.
    `MtjSolver(MarkovProcess mp, MtjSolver.EnumSolver solver, boolean tryOthers)` Construct a solver for the given SimpleMarkovProcess.
    `Solver(MarkovProcess mp)` Build a solver for the given SimpleMarkovProcess
    `SteadyStateSolver(MarkovProcess mp)` Builds a Steady State Solver with the given SimpleMarkovProcess.
    `TransientSolver(MarkovProcess mp)` Build a solver with the asssocieted Markov Process.