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.1.tar.gz (5.0 MB 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.1-py3-none-any.whl (43.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: petritub-1.1.1.tar.gz
  • Upload date:
  • Size: 5.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for petritub-1.1.1.tar.gz
Algorithm Hash digest
SHA256 90c77b6f2faefe9a40b05d586de04800d789caf374302e62d2475dacc091db05
MD5 77ad6365b382d1ab5112ac7c2865f978
BLAKE2b-256 6f1eb8f0c12726066f562a14e1d1d6f640919d4374726efb2d1cc8769e70cb09

See more details on using hashes here.

File details

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

File metadata

  • Download URL: petritub-1.1.1-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.15

File hashes

Hashes for petritub-1.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 4743dd70cf0fa0f25b5ca8dc4dd673f44f7bd5ccca76a7f636b28691d0491f2c
MD5 4968e4c52a08f2e8d51dec0326b03fe3
BLAKE2b-256 c8378956c47c703f0c6da56527ffb05c94c217962dbd7a7ee3755c0b3544dd7a

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