Installation

Setting up a virtual environment first

We highly recommended installing marsi inside a virtual environment using (anaconda).

There is no conda recipe for marsi, but the dependencies can be easily installed using conda. MARSI needs to be installed it using pip. To create a virtual environment and get

some of the heavier dependencies out of the way, run the following command:
$ conda create -y -n marsi python=3.4 cython

Alternatively you can use virtualenv. virtualenvwrapper tremendously simplifies using virtualenv and can easily be installed using virtualenv-burrito. Once you installed virtualenv and virtualenvwrapper, run

$ mkvirtualenv marsi  # or whatever you'd like to call your virtual environment
$ workon marsi

and then continue with the installation instructions described below.

Dependencies required before installation

Using conda

All dependencies will by installed by running the following commands

$ conda install -c openbabel openbabel
$ conda install -c rdkit rdkit

Alternatively you can install the dependencies one by one.

Cython

To install Cython follow the cython-installation documentation provided on their website.

Numpy

Numpy can be installed using conda:

$ conda install numpy

Or can also be installed using pip:

$ pip install numpy

Eigen3

To install Eigen3 on Ubuntu/Debian run:

$ sudo apt-get install libeigen3-dev

To install Eigen3 on MacOS X use homebrew:

$ brew install eigen3

OpenBabel

To install OpenBabel on Ubuntu/Debian run:

$ sudo apt-get install openbabel libopenbabel-dev

On MacOS X it can be installed using homebrew:

$ brew install open-babel

RDKit

RDKit can be installed using the rdkit-documentation.

For MacOS X we recommend using homebrew:

$ brew install rdkit

GLPK

Using constraint-based methods with marsi requires glpk to be installed. In order to generate python bindings, swig is also required. On Ubuntu/Debing we recommend using:

$ sudo apt-get install libglpk-dev glpk-utils swig

On MacOS X it can be installed using homebrew.

$ brew install swig
$ brew install glpk

Optional

CPLEX

CPLEX is a commercial solver with great performance. It solves linear, mixed-integer and quadratic problems. Install CPLEX as described in cplex-install and then install the python bindings (cplex-python).

Installation

marsi can be installed using pip.

$ pip install marsi

Soft dependencies

The following soft dependencies can be installed all at once using pip install marsi[all] or individually by specifying individual categories of dependencies (for example pip install marsi[jupyter,3d, ...]). The following categories are available:

'docs': ['Sphinx>=1.3.5', 'numpydoc>=0.5'],
'jupyter': ['jupyter>=1.0.0', 'ipywidgets>=4.1.1'],
'test': ['nose>=1.3.7', 'rednose>=0.4.3', 'coverage>=4.0.3'],
'3d': ['imolecule>=0.1.13'],
'opencl': ['pyopencl>=2016.1']