Library for system and control tools
Project description
System and Controls Library
Collection of various tools in the field of systems and controls.
Systems can mean just about anything. Here, we are talking about dynamic systems and how to find the right input to achieve a desired state of equilibrium.
As a first step, the library implements the base controller class that defines the basic requirements for any discrete-time controller.
The next step is to derive model-based controllers and then also data-driven controllers.
At some point, the fundamentals of control systems such as PID could be integrated, presumably as wrappers for existing libraries and tools.
Usage
from sysco import Controller # Controller subclasses not already implemented
# custom controller example
class MyController(Controller):
def get_input(self):
return 1
# instantiate custom class and get input
my_controller = MyController()
print(my_controller.get_input()) # --> 1
# try to instantiate base class
base_controller = Controller()
next_input = base_controller.get_input() # --> NotImplementedError
Future development
To avoid bottlenecks later on, Rust is already built into the structure
Controller (in planning)
LQR
- First one that will be implemented
- Infinite horizon without constraints
Returns optimal input $u^\star$ that drives the System to the origin.
MPC
Nominal Case
Economic MPC
Tracking MPC
Robust MPC
Data-driven approaches
DeePC
RL-based
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file sysco-0.1.1b1-cp39-abi3-manylinux_2_34_x86_64.whl.
File metadata
- Download URL: sysco-0.1.1b1-cp39-abi3-manylinux_2_34_x86_64.whl
- Upload date:
- Size: 1.7 MB
- Tags: CPython 3.9+, manylinux: glibc 2.34+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.8.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
84d703679a07c7a3699a19d85724e5c8e967622d123678a201ab0453c4826ba3
|
|
| MD5 |
43b26dd0176cceb9b915bf52b95dbb99
|
|
| BLAKE2b-256 |
dfb4f20ce5b97520065a2619783b7ed4aa518c4afe6eddae1122ca8729715c36
|