Skip to main content

Slycot

https://img.shields.io/pypi/v/slycot.svg https://anaconda.org/conda-forge/slycot/badges/version.svg https://travis-ci.org/python-control/Slycot.svg?branch=master https://coveralls.io/repos/python-control/slycot/badge.png

Python wrapper for selected SLICOT routines, notably including solvers for Riccati, Lyapunov, and Sylvester equations.

Dependencies

Slycot supports Python versions 2.7 and >=3.5.

To run the compiled Slycot package, the following must be installed as dependencies:

  • Python 2.7, 3.5+

  • NumPy

If you are compiling and installing Slycot from source, you will need the following dependencies:

  • Python 2.7, 3.5+

  • NumPy

  • scikit-build >=0.8.1

  • cmake

  • C compiler (e.g. gcc, MS Visual C++)

  • FORTRAN compiler (e.g. gfortran, ifort, flang)

  • BLAS/LAPACK (e.g. OpenBLAS, ATLAS, MKL)

There are a variety of ways to install these dependencies on different operating systems. See the individual packages’ documentation for options.

Installing

In general Slycot requires non-trivial compilation to install on a given system. The easiest way to get started using Slycot is by installing pre-compiled binaries. The Slycot team provides pre-compiled binaries via the conda package manager and conda forge package hosting channel for Linux, OSX, and Windows.

Using conda

Install Miniconda or Anaconda and then Slycot can be installed via the conda package manager from the conda-forge channel with the following command:

conda install -c conda-forge slycot

Using pip

Slycot can also be installed via the pip package manager. Install pip as per recommendations in pip’s documentation. At a minimum, Python and pip must be installed. If a pre-complied binary (i.e. “wheel”) is available it will be installed with no need for compilation. If not, pip will attempt to compile the package from source and thus the compilation dependencies will be required (scikit-build, gfortran, BLAS, etc.).

Pip can then be used to install Slycot with the command:

pip install slycot

From source

Unpack the course code to a directory of your choice, e.g. /path/to/slycot_src/

If you need to specify a specific compiler, set the environment variable FC before running the install:

# Linux/OSX:
export FC=/path/to/my/fortran

# Windows:
set FC=D:\path\to\my\fortran.exe

To build and install execute:

cd /path/to/slycot_src/
python setup.py install

You can also use conda to build and install Slycot from source:

conda build conda-recipe
conda install --use-local slycot

If you prefer to use the OpenBLAS library, a conda recipe is available in conda-recipe-openblas.

Additional tips for how to install Slycot from source can be found in the .travis.yml (commands used for Travis CI) and conda-recipe/ (conda pre-requisites) both which are included in the source code repository.

The hardest part about installing from source is getting a working version of FORTRAN and LAPACK installed on your system and working properly with Python. On Windows, the build system currently uses flang, which can be installed from conda-forge. Note that flang is incompatible with Python 2.7.

If you are using conda, you can also get working (binary) copies of LAPACK from conda-forge using the command:

conda install -c conda-forge lapack

Slycot will also work with the OpenBLAS libraries.

Note that in some cases you may need to set the LIBRARY_PATH environment variable to pick up dependencies such as -lpythonN.m (where N.m is the version of python you are using).

Metadata

Release files for slycot 0.3.5.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for slycot 0.3.5.0
File Size Uploaded
slycot-0.3.5.0.tar.gz 1.5 MB Details

Release files / slycot-0.3.5.0.tar.gz

Download URL slycot-0.3.5.0.tar.gz
Size 1.5 MB
Tags Source
SHA-256 checksum
How to use checksums
cad98d5ea4f0a034cf398c39189f587620a0b03f1d4b71e77cd622a327f13adf
BLAKE2b-256 checksum
How to use checksums
ae9d7ed3f2abf08aab0be9ac2b67e3040c20d9c594cce6a4af2203da0c28a6c4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.2.0 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.5.6

Release history Release notifications | RSS feed

0.7.0

36 release files

0.6.1

1 release file

0.6.0

1 release file

0.5.4

1 release file

0.5.3

1 release file

0.5.2

1 release file

0.5.1

1 release file

0.4.0.0

1 release file

This release

0.3.5.0 This release

1 release file

0.3.3

1 release file

0.3.0

1 release file

0.2.0

5 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page