# jsimIO

**jsimIO** is a platform-independent Python library, compatible with **Python > 3.x**, which can be used to generate [JSIM ](/vlft/tools/jsimio/overview/jsim.md)simulation models of a manufacturing system and run the simulation from a Python environment using the [Java Modelling Tools](/vlft/tools/jsimio/overview.md) (JMT) simulation engine.

GitHub repository: <https://github.com/frabera/jsimIO>

## Features

jsimIO is able to generate simulation models for manufacturing systems with the following characterstics:

* **Multiple part-types**
* **Open** and **closed part-type classes**
* **Assembly operations** (sub-assembly part types can be joined to a assembled part type)
* **Multiple drop** and scheduling strategies
* **Multiple statistical distribution** for modelling service times and arrival times.

{% hint style="info" %}
For a detailed description, refer to the [jsimIO Manual](https://github.com/frabera/jsimIO/blob/master/MANUAL.md) in the dedicated GitHub repository.
{% endhint %}

The available nodes to model the system are:

* **Source**
* **Sink**
* **Station** composed by:
  * **Queue** of finite or infinite size
  * **Server** with single or finite number of concurrent jobs
* **Infinite Server** (Delay)
* **Fork**
* **Join**
* **Logger**

### **Measures**

Many different measures can be selected as simulations result, such as the throughput or the average number of customers, both referred to a single node or to the whole system. *For further information please refer to the JMT manual.*

### Simulation Log

Using the Logger station, it is possible to save a log of each event relate to part flowing by the station.

jsimIO can automatically add a preceding Logger station to each node of the system. In this way, at the end of the simulation a log file is saved as a *.csv* file containing all the events and part flows in the system for further analysis.

## Installation and Requirements

For installation instructions and requirements, visit the dedicated page:

{% content-ref url="/pages/-M4BhfztUm26WjhdmR4D" %}
[How to start](/vlft/tools/jsimio/how-to-start.md)
{% endcontent-ref %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://virtualfactory.gitbook.io/vlft/tools/jsimio.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
