GAMPTeam / vampyre

Approximate Message Passing in Python
MIT License
67 stars 27 forks source link

vampyre

Approximate Message Passing in Python

This repository is a stable and (ideally) well-engineered object-oriented implementation of approximate message passing (AMP) in general settings.

Features

Installation

OSX & *Nix

Until the project is read for distribution, vampyre will not be registered on Pypi and available via pip without downloading the development repository first. In the meantime, developers can build the package by first cloning the repository.

> git clone https://github.com/GAMPTeam/vampyre.git

Subsequently, the package can be installed via pip with the -e directive to allow for live development of the package without re-installing vampyre to your site-packages directory.

> cd /path/to/vampyre
> pip install -e .  # or with the '--user' option to install it unprivileged

Voilà.

Testing

Testing is accomplished via the unittest test framework. All test scripts can be found in the vampyre/test directory. To run the full-suite of package tests, cd to the vampyre/test directory and run the following:

> python -m unittest discover -v

Building Documentation

To build documentation, you need to make sure to have a number of Sphinx packages installed. Specifically, the requirements can be installed via

> pip install sphinx sphinx-autobuild sphinx-rtd-theme

The documentation can be built in the docs directory via Make on OSX/*Nix,

> cd /path/to/vampyre/docs
> make html

or via a batch file on Windows

C:\path\to\vampyre\docs make.bat

Note that if you add a new module, you will need to recreate the module index via the command:

> sphinx-apidoc  -o . ../vampyre/

Documentation can be found at _build/index.html. Documentation will be hosted at Readthedocs.org once the package goes live on Pypi.

Contributors

This repository is maintained by the GAMP Team.

References

(A list of papers goes here.)