sysco


Namesysco JSON
Version 0.1.1b1 PyPI version JSON
download
home_pageNone
SummaryLibrary for system and control tools
upload_time2025-08-15 15:42:11
maintainerNone
docs_urlNone
authorNone
requires_python>=3.13
licenseApache License 2.0
keywords science engineering systems controls controller discrete-time model-based data-driven
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # 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


            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "sysco",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.13",
    "maintainer_email": null,
    "keywords": "science, engineering, systems, controls, controller, discrete-time, model-based, data-driven",
    "author": null,
    "author_email": "Silvan Stadelmann <silvasta3@gmail.com>",
    "download_url": null,
    "platform": null,
    "description": "# System and Controls Library\n\nCollection of various tools in the field of systems and controls.\n\n> Systems can mean just about anything.\n> Here, we are talking about **dynamic systems**\n> and how to find the **right input**\n> to achieve a desired **state of equilibrium**.\n\nAs a first step, the library implements the **base controller class**\nthat defines the basic requirements for any **discrete-time** controller.\n\nThe **next step** is to derive **model-based** controllers\nand then also **data-driven** controllers.\n\n_At some point, the fundamentals of control systems such as PID could be integrated,\npresumably as wrappers for existing libraries and tools._\n\n## Usage\n\n```python\nfrom sysco import Controller # Controller subclasses not already implemented\n\n# custom controller example\nclass MyController(Controller):\n    def get_input(self):\n        return 1\n\n# instantiate custom class and get input\nmy_controller = MyController()\nprint(my_controller.get_input()) # --> 1\n\n# try to instantiate base class\nbase_controller = Controller()\nnext_input = base_controller.get_input() # --> NotImplementedError\n```\n\n## Future development\n\nTo avoid bottlenecks later on, Rust is already built into the structure \ue7a8\n\n## Controller (in planning)\n\n### LQR\n\n- First one that will be implemented\n- Infinite horizon without constraints\n\nReturns optimal input $u^\\star$ that drives the System to the origin.\n\n### MPC\n\n#### Nominal Case\n\n#### Economic MPC\n\n#### Tracking MPC\n\n#### Robust MPC\n\n### Data-driven approaches\n\n#### DeePC\n\n#### RL-based\n\n",
    "bugtrack_url": null,
    "license": "Apache License 2.0",
    "summary": "Library for system and control tools",
    "version": "0.1.1b1",
    "project_urls": {
        "Repository": "https://github.com/silvasta/sysco"
    },
    "split_keywords": [
        "science",
        " engineering",
        " systems",
        " controls",
        " controller",
        " discrete-time",
        " model-based",
        " data-driven"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "dfb4f20ce5b97520065a2619783b7ed4aa518c4afe6eddae1122ca8729715c36",
                "md5": "43b26dd0176cceb9b915bf52b95dbb99",
                "sha256": "84d703679a07c7a3699a19d85724e5c8e967622d123678a201ab0453c4826ba3"
            },
            "downloads": -1,
            "filename": "sysco-0.1.1b1-cp39-abi3-manylinux_2_34_x86_64.whl",
            "has_sig": false,
            "md5_digest": "43b26dd0176cceb9b915bf52b95dbb99",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.13",
            "size": 1683845,
            "upload_time": "2025-08-15T15:42:11",
            "upload_time_iso_8601": "2025-08-15T15:42:11.079751Z",
            "url": "https://files.pythonhosted.org/packages/df/b4/f20ce5b97520065a2619783b7ed4aa518c4afe6eddae1122ca8729715c36/sysco-0.1.1b1-cp39-abi3-manylinux_2_34_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-08-15 15:42:11",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "silvasta",
    "github_project": "sysco",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "sysco"
}
        
Elapsed time: 1.97608s