Skip to main content

Python control systems library

Project description

https://travis-ci.org/python-control/python-control.svg?branch=master https://coveralls.io/repos/python-control/python-control/badge.png

Python Control Systems Library

The Python Control Systems Library is a Python module that implements basic operations for analysis and design of feedback control systems.

Features

  • Linear input/output systems in state-space and frequency domain

  • Block diagram algebra: serial, parallel, and feedback interconnections

  • Time response: initial, step, impulse

  • Frequency response: Bode and Nyquist plots

  • Control analysis: stability, reachability, observability, stability margins

  • Control design: eigenvalue placement, linear quadratic regulator

  • Estimator design: linear quadratic estimator (Kalman filter)

Dependencies

The package requires numpy, scipy, and matplotlib. In addition, some routines use a module called slycot, that is a Python wrapper around some FORTRAN routines. Many parts of python-control will work without slycot, but some functionality is limited or absent, and installation of slycot is recommended (see below). Note that in order to install slycot, you will need a FORTRAN compiler on your machine. The Slycot wrapper can be found at:

https://github.com/jgoppert/Slycot

Installation

The package may be installed using pip or distutils.

Pip

To install using pip:

pip install slycot   # optional
pip install control

Distutils

To install in your home directory, use:

python setup.py install --user

To install for all users (on Linux or Mac OS):

python setup.py build
sudo python setup.py install

Development

Code

You can check out the latest version of the source code with the command:

git clone https://github.com/python-control/python-control.git

Testing

You can run a set of unit tests to make sure that everything is working correctly. After installation, run:

python setup.py test

Contributing

Your contributions are welcome! Simply fork the GitHub repository and send a pull request.

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

control-0.7.0.tar.gz (136.4 kB view details)

Uploaded Source

Built Distribution

control-0.7.0-py2.py3-none-any.whl (145.9 kB view details)

Uploaded Python 2Python 3

File details

Details for the file control-0.7.0.tar.gz.

File metadata

  • Download URL: control-0.7.0.tar.gz
  • Upload date:
  • Size: 136.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for control-0.7.0.tar.gz
Algorithm Hash digest
SHA256 18ce26206e40f4ba62b2a0bf86943598a6ec3f957e15bd46d17b9e1e314f19d6
MD5 3a634205e32553783bb04a8c0668d9d0
BLAKE2b-256 71a0d7e6a3806bf4a386342b6a7a675a1d129b507ec35e75a67d549e0dfb0905

See more details on using hashes here.

File details

Details for the file control-0.7.0-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for control-0.7.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 52707d9a9c370ecc298f3ec5734da516421c7bc0d3d12553bfbfe8b01793fd70
MD5 563608ae643e790864211667fb5087ce
BLAKE2b-256 475da5871a504052142e3d5c248fb982b8e0f8298bbe5d9eda91f92b03718527

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page