.. -*- restructuredtext -*-

Description
------------

eventsim makes discrete event easy to simulate

Currently, it consists of three modules:
models, randgen and simevent

MODULES
-------

Models
------

contains methods for simplifying and calculating:

* probability,
* estimated variance,
* estimated mean,
* estimated standard deviation,
* expectation value,
* discreteEmp

most of its methods takes in two arguments, outcome and cummulative probability and a third optional argument which is how many times an item should be generated or times to be calculated.

Randgen
-------

contains methods for simplifying and generating a:

* random outcome,
* a unique outcome
* times of occurrence of outcome
* probability of occurrence
* cummulative probability of occurrence

Simevent
--------

contains methods for generating and estimating events that happens in a workplace scenario. Simulating events like:

* Interarrival time
* Service time
* Arrival time
* Time when service begins
* Time when service ends
* Wait time in queue
* Time customer spends in system
* Idle time of server
* table display format you you want a more structured approach


This module currently contains three classes:

* randomsim which generates random values to populate the inter-arrival and service time ad then calculates the rest of the values (accepts 0 - 3 arguments)

* simulation, a more flexible class that allows you to imput your own inter-arrival time and service time as a list (takes 1-2 arguments [inter-arrival, service] time)

* simtable contains one method, drawtable() for generating a tabled format of all the data using tkinter frames.make life easier by importing all classes from simevent
	e.g. from eventsim.simevent import * 

	or risk having to import at least three different modules by youself.Using drawtable is really simple, you only need to pass in the instance of your simulation class as first argument and Tk() as second argument and your table will be generated for you

	e.g. a = randomsim(4,6,9)
	simtable(a, Tk()).drawtable()

help on using this package is included in the installation file or alternatively call.
manual(modulename) after importing the package to view how to use it

For more help information please read the help notes provided in the package
	

Requirements
------------

* Any version of python
* One of tkinter ot Tkinter is needed to display generated simulation in a tabular format

Acknowledgements
----------------

I was inspired to write this package after my university coursework demanded using python to simulate events. I hope Modelling and Simulation students find it useful

All glory belongs to God for helping me in completing my first module.


Contact
-------

If further information or help is needed, feel free to contact me on my email at taiwo.kareem36@gmail.com
