Skip to content

Commit 7f93726

Browse files
committed
Update and improve README
1 parent 09a7153 commit 7f93726

1 file changed

Lines changed: 71 additions & 40 deletions

File tree

README.rst

Lines changed: 71 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -1,65 +1,96 @@
1-
Python Control System Library
2-
=============================
3-
41
.. image:: https://travis-ci.org/python-control/python-control.svg?branch=master
5-
:target: https://travis-ci.org/python-control/python-control
2+
:target: https://travis-ci.org/python-control/python-control
63
.. image:: https://coveralls.io/repos/python-control/python-control/badge.png
7-
:target: https://coveralls.io/r/python-control/python-control
4+
:target: https://coveralls.io/r/python-control/python-control
5+
6+
Python Control Systems Library
7+
==============================
8+
9+
The Python Control Systems Library is a Python module that implements basic
10+
operations for analysis and design of feedback control systems.
11+
12+
Features
13+
--------
14+
15+
- Linear input/output systems in state-space and frequency domain
16+
- Block diagram algebra: serial, parallel, and feedback interconnections
17+
- Time response: initial, step, impulse
18+
- Frequency response: Bode and Nyquist plots
19+
- Control analysis: stability, reachability, observability, stability margins
20+
- Control design: eigenvalue placement, linear quadratic regulator
21+
- Estimator design: linear quadratic estimator (Kalman filter)
22+
23+
24+
Links
25+
=====
26+
27+
- Project home page: http://python-control.sourceforge.net
28+
- Source code repository: https://github.com/python-control/python-control
29+
- Documentation: http://python-control.readthedocs.org/
30+
- Issue tracker: https://github.com/python-control/python-control/issues
31+
- Mailing list: http://sourceforge.net/p/python-control/mailman/
32+
33+
34+
Dependencies
35+
============
836

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

11-
This directory contains the source code for the Python Control Systems
12-
Library (python-control). This package provides a library of standard
13-
control system algorithms in the python programming environment.
44+
https://github.com/jgoppert/Slycot
1445

1546
Installation
16-
------------
47+
============
48+
49+
The package may be installed using pip or distutils.
50+
51+
Pip
52+
---
53+
54+
To install using pip::
1755

18-
Using pip
19-
~~~~~~~~~~~
56+
pip install slycot # optional
57+
pip install control
2058

21-
Pip is a python packaging system. It can be installed on debian based
22-
linux distros with the command::
59+
Distutils
60+
---------
2361

24-
sudo apt-get install pip
62+
To install in your home directory, use::
2563

26-
Pip can then be used to install python-control::
64+
python setup.py install --user
2765

28-
sudo pip install control
66+
To install for all users (on Linux or Mac OS)::
2967

68+
python setup.py build
69+
sudo python setup.py install
3070

31-
From Source
32-
~~~~~~~~~~~
3371

34-
Standard python package installation::
72+
Development
73+
===========
3574

36-
python setup.py install
75+
Code
76+
----
3777

38-
To see if things are working, you can run the script
39-
examples/secord-matlab.py (using ipython -pylab). It should generate a step
40-
response, Bode plot and Nyquist plot for a simple second order linear
41-
system.
78+
You can check out the latest version of the source code with the command::
79+
80+
git clone https://github.com/python-control/python-control.git
4281

4382
Testing
4483
-------
4584

46-
You can also run a set of unit tests to make sure that everything is working
85+
You can run a set of unit tests to make sure that everything is working
4786
correctly. After installation, run::
4887

49-
python runtests.py
50-
51-
Slycot
52-
------
53-
54-
Routines from the Slycot wrapper are used for providing the
55-
functionality of several routines for state-space, transfer functions
56-
and robust control. Many parts of python-control will still work
57-
without slycot, but some functionality is limited or absent, and
58-
installation of Slycot is definitely recommended. The Slycot wrapper
59-
can be found at:
88+
python setup.py test
6089

61-
https://github.com/jgoppert/Slycot
90+
Contributing
91+
------------
6292

63-
and can be installed with::
93+
Your contributions are welcome! Simply fork the GitHub repository and send a
94+
`pull request`_.
6495

65-
sudo pip install slycot
96+
.. _pull request: https://github.com/python-control/python-control/pulls

0 commit comments

Comments
 (0)