skip to navigation
skip to content

fastmat 0.1.1

fast linear transforms in Python

# fastmat
[![Python wheels](](
[![Codacy Badge](](

[![Python versions](](

[![Coverage Status](](
[![GitHub issues](](
**master:** [![Build Status](]( **stable:** [![Build Status](](

## Description
Scientific computing requires handling large composed or structured matrices.
Fastmat is a framework for handling large composed or structured matrices.
It allows expressing and using them in a mathematically intuitive way while
storing and handling them internally in an efficient way. This approach allows
huge savings in computational time and memory requirements compared to using
dense matrix representations.

### Languages
- Python
- Cython

### Dependencies
- Python >= 2.7 or >=3.4
- Numpy >= 1.07
- Scipy >= 1.08
- Cython >= 1.18

### soft-dependencies
- matplotlib: for demos and tools that make use of plotting functions

### Authors
- Sebastian Semper - Technische Universität Ilmenau, Institute for Mathematics
- Christoph Wagner - Technische Universität Ilmenau,
Institute for Information Technology, EMS Group

### Contact

## Documentation / HELP !
Please have a look at the documentation, which is included in the source
distribution at github or may be built locally on your machine by running
`make doc`

If you experience any trouble please do not hesitate to contact us or to open
an issue on our github projectpage:

### FAQ

#### Installation fails with *ImportError: No module named Cython.Build*
Something went wrong with resolving the dependencies of fastmat during setup.
This issue will be addressed in release 0.1.1. Please check if the problem
persists with this version. You may try to bypass the problem by running
`pip install cython numpy scipy`
and retrying the installation of fastmat.

#### Windows: Installation fails with various "file not found" errors
Often, this is caused by missing header files. Unfortunately windows ships
without a c-compiler and the header files necessary to compile native binary
code. If you use the Intel Distribution for Python this can be resolved by
installing the Visual Studio Build tools with the version as recommended by
the version of the Intel Distribution for Python that you are using.

#### Issue not resolved yet?
Please contact us or leave your bug report in the *issue* section. Thank You!

## Citation / Acknowledgements
If you want to use fastmat or parts of it in your private, scientific or
commercial project or work you are required to acknowledge visibly to all users
that fastmat was used for your work and put a reference to the project and the
EMS Group at TU Ilmenau.

If you use fastmat for your scientific work you are further required to cite
the following publication affiliated with the project:
- `to be announced soon. Please tune back in regularly to check on updates.`

## Installation
fastmat currently supports Linux, Windows and Mac OS. You may choose one of
these installation methods:

### installation with pip:

fastmat is included in the Python Package Index (PyPI) and can be installed
from the commandline by running one easy and straightforward command:
`pip install fastmat`

When installing with pip all dependencies of the package will be installed
along. With release 0.1.1 python wheels will be offered for many versions
greatly improving installation time and effort.

### installation from source: doing it manually
- download the source distribution from our github repository:
- unpack its contents and navigate to the project root directory
- run `pip install .` to install fastmat on your computer
- you may also install fastmat without pip, using the offered makefile:
* type `make install` to install fastmat on your computer
* If you intend to install the package locally for your user type
`make install MODE=--user` instead
* You may add a version specifier for all `make` targets that directly or indirectly invoke Python:
`make install PYTHON=python2`
`make compile PYTHON=python3`
* If you only would like to compile the package to use it from this local
directory without installing it, type `make compile`
* An uninstallation of a previously run `make install`is possible, provided the installation log file `setup.files` has been preserved
Invoking `make uninstall` without a local `setup.files` causes another installation for generating the setup file log prior to uninstalling
- **NOTE: Windows users**
If you intent on building fastmat from source on a windows platform, make sure you have installed a c compiler environment and make interpreter. One way to accomplish this is to install these tools for Python 2.7 (you may also chose different ones, of course):
* Intel Distribution for Python 2.7
* Microsoft Visual C++ Compiler 9.0 for Python 2.7
* GNU make for Windows 3.81 or newer
* depending on your system: The relevant header files

## Demos
Feel free to have a look at the demos in the `demo/` directory of the source
distribution. Please make sure to have fastmat already installed when running

Please note that the edgeDetect demo requires the Python Imaging Library (PIL)
installed and the SAFT demos do compile a cython-core of a user defined matrix
class beforehand thus having a delaying the first time they're executed.

File Type Py Version Uploaded on Size
fastmat-0.1.1-cp27-cp27m-macosx_10_6_intel.whl (md5) Python Wheel cp27 2017-11-20 5MB
fastmat-0.1.1-cp27-cp27m-manylinux1_i686.whl (md5) Python Wheel cp27 2017-11-20 9MB
fastmat-0.1.1-cp27-cp27m-manylinux1_x86_64.whl (md5) Python Wheel cp27 2017-11-20 10MB
fastmat-0.1.1-cp27-cp27m-win32.whl (md5) Python Wheel cp27 2017-11-20 1MB
fastmat-0.1.1-cp27-cp27m-win_amd64.whl (md5) Python Wheel cp27 2017-11-20 2MB
fastmat-0.1.1-cp27-cp27mu-manylinux1_i686.whl (md5) Python Wheel cp27 2017-11-20 9MB
fastmat-0.1.1-cp27-cp27mu-manylinux1_x86_64.whl (md5) Python Wheel cp27 2017-11-20 10MB
fastmat-0.1.1-cp34-cp34m-macosx_10_6_intel.whl (md5) Python Wheel cp34 2017-11-21 5MB
fastmat-0.1.1-cp34-cp34m-manylinux1_i686.whl (md5) Python Wheel cp34 2017-11-20 10MB
fastmat-0.1.1-cp34-cp34m-manylinux1_x86_64.whl (md5) Python Wheel cp34 2017-11-20 11MB
fastmat-0.1.1-cp34-cp34m-win32.whl (md5) Python Wheel cp34 2017-11-20 1MB
fastmat-0.1.1-cp34-cp34m-win_amd64.whl (md5) Python Wheel cp34 2017-11-20 2MB
fastmat-0.1.1-cp35-cp35m-macosx_10_6_intel.whl (md5) Python Wheel cp35 2017-11-21 5MB
fastmat-0.1.1-cp35-cp35m-manylinux1_i686.whl (md5) Python Wheel cp35 2017-11-20 10MB
fastmat-0.1.1-cp35-cp35m-manylinux1_x86_64.whl (md5) Python Wheel cp35 2017-11-20 10MB
fastmat-0.1.1-cp35-cp35m-win32.whl (md5) Python Wheel cp35 2017-11-20 1MB
fastmat-0.1.1-cp35-cp35m-win_amd64.whl (md5) Python Wheel cp35 2017-11-20 2MB
fastmat-0.1.1-cp36-cp36m-macosx_10_6_intel.whl (md5) Python Wheel cp36 2017-11-21 5MB
fastmat-0.1.1-cp36-cp36m-manylinux1_i686.whl (md5) Python Wheel cp36 2017-11-20 10MB
fastmat-0.1.1-cp36-cp36m-manylinux1_x86_64.whl (md5) Python Wheel cp36 2017-11-20 11MB
fastmat-0.1.1-cp36-cp36m-win32.whl (md5) Python Wheel cp36 2017-11-20 1MB
fastmat-0.1.1-cp36-cp36m-win_amd64.whl (md5) Python Wheel cp36 2017-11-20 2MB
fastmat-0.1.1.tar.gz (md5) Source 2017-11-20 184KB