semvec/pypi-packages huggingface dataset:
syscovis 0.1.1b1
Visualizaton for System and Control tasks
License: Apache License 2.0
Requires Python: >=3.13
Keywords: science, engineering, visualizaton, systems, controls, controller, discrete-time, model-based, data-driven

# Systems and Controls Visualization

Library that is intended to create different forms of visualizations for dynamic systems but also for other purposes.

It will be more a wrapper of existing tools and maybe created such to compare them. (matplotlib, plotly, ...)

## Usage

```python
# integration with python
from syscovis import plotter
# create the plots
plotter.plot() # so far it creates the directory for the plots
```

```bash
# test from shell
uv run python -c "import syscovis; print(syscovis.hello())"
```

## Visualizations (in planning)

### Trajectories

Every possible combination of plots in 2d, with the idea to _just_ plot them, not spend hours with configuration.

Maybe there will be some experiments in 3d.

### Video rendering

### Classic control stuff

#### Bode

#### Nyquist
sysco 0.1.1b1
Library for system and control tools
License: Apache License 2.0
Requires Python: >=3.13
Keywords: science, engineering, systems, controls, controller, discrete-time, model-based, data-driven

# 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

```python
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