pypolymake ========== What is it? ----------- The Python module pypolymake provides wrappers for `polymake <https://polymake.org/doku.php>`_. The language has been kept as close as possible as the original. The following polymake construction:: polytope> $c = cube(5); polytope> print $c->F_VECTOR; 32 80 80 40 10 polytope> $g = $c->GRAPH; polytope> print $g->DIAMETER; 5 is translated in Python as:: >>> from polymake import * >>> c = cube(5) >>> print(c.F_VECTOR) (32, 80, 80, 40, 10) >>> g = c.GRAPH >>> print(g.DIAMETER) 5 The library is currently under development and is compatible with Python2 and Python3. As it is under development, many things are not working and are likely to break. Installation and source code ---------------------------- If you are using `SageMath <http://www.sagemath.org>`_ then just run the following two commands $ sage -i polymake $ sage -pip install git+https://github.com/videlec/pypolymake If you are using the beta release of polymake you need to install the package from the beta branch with $ sage -i polymake-beta # TO BE FIXED $ sage -pip install git+https://github.com/videlec/pypolymake@beta In principle, pypolymake could be used with Python2, Python3 and within Sage. The prerequisites are - polymake in version 3.0 or later together with its header files - `Cython <http://cython.org/>`_ - `cysignals <https://pypi.python.org/pypi/cysignals/>`_ To install the package then use:: $ pip install git+https://github.com/videlec/pypolymake [--user] [--pre] (the `--pre` argument is needed on recent pip versions to allow installation of beta releases, the `--user` argument make the installation in your home directory and can be omitted if you have write access to your system). If polymake headers or libraries are installed in a non standard location you may need to set the environment variables CFLAGS, CXXFLAGS, LDFLAGS. For example, on OS X, you need to update LDFLAGS as:: $ export LDFLAGS="-L/System/Library/Perl/5.18/darwin-thread-multi-2level/CORE/ $LDFLAGS" $ python setup.py install --user You might also need to set LD_LIBRARY_PATH before starting Python if the shared library of polymake (libpolymake.so) is not in a standard directory. License ------- The library pypolymake is distributed under the terms of the GNU General Public License (GPL) as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version (see http://www.gnu.org/licenses/) Authors ------- This project has been started by Burcin Erocal in 2011 and continued by Vincent Delecroix in 2016