HTTP/2 301
date: Mon, 29 Dec 2025 20:51:51 GMT
server: Apache
location: https://python-control.readthedocs.org/
age: 1286
vary: Accept-Encoding
content-encoding: gzip
via: e13s
content-length: 203
content-type: text/html; charset=iso-8859-1
HTTP/2 301
date: Mon, 29 Dec 2025 21:13:18 GMT
content-type: text/html
content-length: 162
location: https://python-control.readthedocs.io/
cf-ray: 9b5c4cef09f37679-BLR
x-backend: web-i-0e8733f2c69b42b60
x-served: Nginx-Domain-Redirect
cf-cache-status: DYNAMIC
set-cookie: __cf_bm=E_KVJDK3rHOuHtWVmoe79YiMLeyF5DjwfrAHenuUxkY-1767042798-1.0.1.1-AdNqBh1bJS_WB_0cJos1UzVw3Xwph1VdSooMEGXkXGF0iY4aAKseDWU.kfoIo_fIKCox7RYNRa4gIixTTAjLjcm5VO6BRWfl2ffmC1xWL6I; path=/; expires=Mon, 29-Dec-25 21:43:18 GMT; domain=.readthedocs.org; HttpOnly; Secure; SameSite=None
set-cookie: _cfuvid=iOPEf9J2IIUtyBo7yroLVC_laxJf21TXx4g35hZQ2Go-1767042798730-0.0.1.1-604800000; path=/; domain=.readthedocs.org; HttpOnly; Secure; SameSite=None
server: cloudflare
HTTP/2 302
date: Mon, 29 Dec 2025 21:13:19 GMT
content-type: text/html; charset=utf-8
content-length: 0
location: https://python-control.readthedocs.io/en/0.10.2/
server: cloudflare
cf-ray: 9b5c4cf43f111eef-BLR
cf-cache-status: HIT
cache-control: max-age=1200
content-language: en
strict-transport-security: max-age=31536000; includeSubDomains; preload
vary: Accept-Language, Accept-Encoding
cdn-cache-control: public
cross-origin-opener-policy: same-origin
referrer-policy: no-referrer-when-downgrade
x-backend: web-i-0e8733f2c69b42b60
x-content-type-options: nosniff
x-rtd-domain: python-control.readthedocs.io
x-rtd-force-addons: true
x-rtd-project: python-control
x-rtd-project-method: public_domain
x-rtd-redirect: system
x-rtd-version-method: path
x-served: Django-Proxito
set-cookie: __cf_bm=Pr0TGtx8BHZfEWk3QhJf68YDW9KafgCJIvw3fR6fhIU-1767042799-1.0.1.1-96v3itJY7GUBroXlunfn34zpCBU3ES2sBaMARfKc9GAZ8Iu52ylqaoP1yc0YPbQw2fKzseI7NkVztl_.g1FEuJVJaXSC7ch1HhozNN4d20M; path=/; expires=Mon, 29-Dec-25 21:43:19 GMT; domain=.readthedocs.io; HttpOnly; Secure; SameSite=None
set-cookie: _cfuvid=EPdgqHrf10WSBQf1bHyah9PqUIa3J1JtFScoeeOYPYU-1767042799630-0.0.1.1-604800000; path=/; domain=.readthedocs.io; HttpOnly; Secure; SameSite=None
alt-svc: h3=":443"; ma=86400
HTTP/2 200
date: Mon, 29 Dec 2025 21:13:20 GMT
content-type: text/html; charset=utf-8
server: cloudflare
cf-ray: 9b5c4cf9bb551eef-BLR
cf-cache-status: HIT
access-control-allow-origin: *
cache-control: max-age=1200
content-encoding: gzip
etag: W/"d8754f69f55cc95fbe965bad6217886f"
last-modified: Sat, 05 Jul 2025 22:32:10 GMT
strict-transport-security: max-age=31536000; includeSubDomains; preload
vary: Accept-Encoding
access-control-allow-methods: HEAD, OPTIONS, GET
cdn-cache-control: public
cross-origin-opener-policy: same-origin
referrer-policy: no-referrer-when-downgrade
x-amz-id-2: 8Gnf35BNhY4n//0iVgKpoqwa0qNYPDcnjUqi5dtOJIBwP5EFrA94TndII+Lb+Wgy+QND1k3l0MK/Ctw373H09vEx2Cc8ZWQwZrK/oW95gGU=
x-amz-meta-mtime: 1751754704.832802068
x-amz-request-id: BWJCZJ5V7709VFM0
x-amz-server-side-encryption: AES256
x-backend: web-i-09fdbebe520f270e1
x-content-type-options: nosniff
x-rtd-domain: python-control.readthedocs.io
x-rtd-force-addons: true
x-rtd-path: /proxito/html/python-control/0.10.2/index.html
x-rtd-project: python-control
x-rtd-project-method: public_domain
x-rtd-resolver-filename: /
x-rtd-version: 0.10.2
x-rtd-version-method: path
x-served: Nginx-Proxito-Sendfile
set-cookie: __cf_bm=jLOxMesu5LZ2dh7Vn7aaySnxjqxnQktG5CGoiQ_R8Ag-1767042800-1.0.1.1-ptvPmSWoexbQYvkc_hZ_eWtvcn1UbNQ1kTb_C7ebJPZ0XO3sIxji_v6AoFNl5PnAVd.QymXzEfIs1nmYQrVzP0A9tRG3Hdi7EXLR23hCcIo; path=/; expires=Mon, 29-Dec-25 21:43:20 GMT; domain=.readthedocs.io; HttpOnly; Secure; SameSite=None
set-cookie: _cfuvid=QBY80qKRTC9WapC.2g2_z3Xrwb3.pSt4VXyBZQttmA4-1767042800488-0.0.1.1-604800000; path=/; domain=.readthedocs.io; HttpOnly; Secure; SameSite=None
alt-svc: h3=":443"; ma=86400
Python Control Systems Library — Python Control Systems Library 0.10.2 documentation
Python Control Systems Library
Python Control Systems Library
The Python Control Systems Library (python-control) is a Python
package that implements basic operations for analysis and design of
feedback control systems.
Features
Linear input/output systems in state space and frequency domain
Nonlinear input/output system modeling, simulation, and analysis
Block diagram algebra: serial, parallel, and feedback interconnections
Time response: initial, step, impulse, and forced response
Frequency response: Bode, Nyquist, and Nichols plots
Control analysis: stability, reachability, observability, stability
margins, phase plane plots, root locus plots
Control design: eigenvalue placement, LQR, H2, Hinf, and MPC/RHC
Trajectory generation: optimal control and differential flatness
Model reduction: balanced realizations and Hankel singular values
Estimator design: linear quadratic estimator (Kalman filter), MLE, and MHE
Links:
How to cite
An article
about the library is available on IEEE Explore. If the Python Control
Systems Library helped you in your research, please cite:
@inproceedings { python - control2021 ,
title = { The Python Control Systems Library ( python - control )},
author = { Fuller , Sawyer and Greiner , Ben and Moore , Jason and
Murray , Richard and van Paassen , Ren { \'e} and Yorke, Rory},
booktitle = { 60 th IEEE Conference on Decision and Control ( CDC )},
pages = { 4875 -- 4881 },
year = { 2021 },
organization = { IEEE }
}
or the GitHub site: https://github.com/python-control/python-control .
Development
You can check out the latest version of the source code with the command:
git clone https : // github . com / python - control / python - control . git
You can run the unit tests with pytest to make sure that everything is
working correctly. Inside the source directory, run:
or to test the installed package:
pytest -- pyargs control - v
Your contributions are welcome! Simply fork the GitHub repository and send a pull
request .
Please see the Developer’s Wiki for detailed instructions.