Skip to main content

Welcome to Pynamics

Pynamics is a simple, lightweight Python package to simulate dynamical systems.

It is mainly inteded as a support package for more advanced control design projects, especially projects seeking to implement advanced control systems leveraging the predictive capabilities of machine learning algorithms.

The package provides classes to model a system (linear and nonlinear state-space models) and a simulator class that can be used to run different types of simulations. Limited control capabilities are also provided, namely a controller base class that users can build upon to design their own controllers.

Please note that this package is NOT appropriate for extensive, extremely precise simulations.

Main features

  • Simulations: simulate dynamical systems in Python using our simulator class. Only fixed-step solvers are supported at the moment.

  • Plot results: plot the simulation results automatically.

  • State-space models: model your system using our generic linear and nonlinear state-space models.

Installation

Using pip

The easiest way to install Pynamics is to install it directly from PyPi using pip:

pip install pynamics

This will install the package along with its dependencies.

If you wish to contribute to the package, install its development dependencies by typing:

pip install "pynamics[dev]"

Using git

Alternatively, the package can be installed via git. To do so, you must first clone the repository:

git clone https://github.com/MiguelLoureiro98/pynamics.git

Once the repository has been cloned, move into its directory and install the package using pip:

cd pynamics
pip install .

Documentation

Check out the official documentation: https://miguelloureiro98.github.io/pynamics/

About

This package was developed by Miguel Loureiro, a Mechanical Engineer who specialises in control systems, machine learning and optimisation algorithms.

If you're interested in any of these, feel free to contact me via email: miguel.santos.loureiro@gmail.com

Metadata

Release files for pynamics2 1.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pynamics2 1.0.0
File Size Uploaded
pynamics2-1.0.0.tar.gz 29.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for pynamics2 1.0.0
File Interpreter ABI Platform
pynamics2-1.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 70.2 kB

Release files / pynamics2-1.0.0.tar.gz

Download URL pynamics2-1.0.0.tar.gz
Size 29.6 kB
Tags Source
SHA-256 checksum
How to use checksums
28b80a1e283c6034979ca9d98c583a9edb69d12ff55a558dce90be24f439f12c
BLAKE2b-256 checksum
How to use checksums
e1ea93f39559cdb29dfba6e5d1b919a4c02226efd135500c75387e2126c8089b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.12.4

Release files / pynamics2-1.0.0-py3-none-any.whl

Download URL pynamics2-1.0.0-py3-none-any.whl
Size 40.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
d83a5248b4f5df718ce302c6444a175cfe9f283fca52a72e7b7a1ec62af38ee2
BLAKE2b-256 checksum
How to use checksums
27b3ee0422718d8169d42e831da238f7dae22cff14d939c9d6816ea8840b8737
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.12.4

Release history Release notifications | RSS feed

This release

1.0.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page