Skip to main content

Untimed Petri nets and max-plus/min-plus algebra tools for timed event graphs

Project description

PetriTUB

The Python toolbox petritub allows to manipulate untimed Petri nets and provides max-plus and min-plus algebra tools for the study of timed event graphs.

For instance, the library provides functions for performing the following tasks:

  • Drawing the coverability tree for a given Petri net
  • Computing the maximally permissive state-based controller, given a set of specifications
  • Finding the cycle time of a timed event graph and solving the related eigenproblem
  • Drawing the trajectory of a timed event graph as a Gantt chart

Please read the documentation.

Directory structure

  • ./petritub/: contains the toolbox. Import the individual modules from petritub.module_name import * to use the toolbox.
  • ./doc/: contains the Sphinx source documentation of the toolbox.
  • ./figures/: contains some figures for the tutorial jupyter notebooks.
  • Two jupyter notebook tutorials (tutorial_max_plus.ipynb and tutorial_untimed_pn.ipynb) demonstrating the usage of the toolbox are in the root folder.

Authors

The toolbox is continuously developed at the Control Systems Group of the Technical University Berlin. The first version of the code was designed in the summer semester of 2022 by Jan Bednar, Jan Clevorn, Jakub Dvorak, Dominik Tirpak, under the supervision of Davide Zorzenon, as part of the course "Projekt Synthese und Analyse von Regelsystemen". External contributions are highly welcome, for contact write to Davide Zorzenon.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

petritub-1.1.0.tar.gz (554.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

petritub-1.1.0-py3-none-any.whl (43.5 kB view details)

Uploaded Python 3

File details

Details for the file petritub-1.1.0.tar.gz.

File metadata

  • Download URL: petritub-1.1.0.tar.gz
  • Upload date:
  • Size: 554.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.7

File hashes

Hashes for petritub-1.1.0.tar.gz
Algorithm Hash digest
SHA256 181bceb63db7537b29de034c124788c1bac06d9cdd67355242119c44aaa2c0b6
MD5 a261802ad1d3665447c24216c2849777
BLAKE2b-256 532dc900634ee144c42bb744eef98d80f1822b38d36fac2046da2185b0f75a2e

See more details on using hashes here.

File details

Details for the file petritub-1.1.0-py3-none-any.whl.

File metadata

  • Download URL: petritub-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 43.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.7

File hashes

Hashes for petritub-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 7e016c368cafb442e411b1575010fa33ea3cd39c0da1ad6d7f670c5b4fdf1254
MD5 225a59812082314481b7c570f997a45f
BLAKE2b-256 942593fc9b95ceb2f0e2964b6c18ef5309cfb7d16e2c6db0f1393a2ab197b93c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page