Metadata-Version: 2.0
Name: cobra
Version: 0.5.1b2
Summary: COBRApy is a package for constraints-based modeling of biological networks
Home-page: https://opencobra.github.io/cobrapy
Author: Daniel Robert Hyduke <danielhyduke@gmail.com>, Ali Ebrahim <aebrahim@ucsd.edu>
Author-email: aebrahim@ucsd.edu
License: LGPL/GPL v2+
Download-URL: https://pypi.python.org/pypi/cobra
Keywords: metabolism biology linear programming optimization flux balance analysis fba
Platform: GNU/Linux
Platform: Mac OS X >= 10.7
Platform: Microsoft Windows >= 7
Classifier: Development Status :: 5 - Production/Stable
Classifier: Environment :: Console
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: GNU Lesser General Public License v2 or later (LGPLv2+)
Classifier: License :: OSI Approved :: GNU General Public License v2 or later (GPLv2+)
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Cython
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Topic :: Scientific/Engineering
Classifier: Topic :: Scientific/Engineering :: Bio-Informatics
Requires-Dist: six
Provides-Extra: all
Requires-Dist: Cython (>=0.21); extra == 'all'
Requires-Dist: lxml; extra == 'all'
Requires-Dist: matplotlib; extra == 'all'
Requires-Dist: numpy (>=1.6); extra == 'all'
Requires-Dist: palettable; extra == 'all'
Requires-Dist: pandas (>=0.17.0); extra == 'all'
Requires-Dist: pymatbridge; extra == 'all'
Requires-Dist: python-libsbml; extra == 'all'
Requires-Dist: scipy (>=0.11.0); extra == 'all'
Requires-Dist: tabulate; extra == 'all'
Provides-Extra: array
Requires-Dist: numpy (>=1.6); extra == 'array'
Requires-Dist: scipy (>=0.11.0); extra == 'array'
Provides-Extra: display
Requires-Dist: matplotlib; extra == 'display'
Requires-Dist: palettable; extra == 'display'
Requires-Dist: pandas (>=0.17.0); extra == 'display'
Requires-Dist: tabulate; extra == 'display'
Provides-Extra: matlab
Requires-Dist: pymatbridge; extra == 'matlab'
Provides-Extra: sbml
Requires-Dist: lxml; extra == 'sbml'
Requires-Dist: python-libsbml; extra == 'sbml'

cobrapy
=======

|Build Status| |Coverage Status| |Build status| |PyPI| |Gitter|

COnstraint-Based Reconstruction and Analysis (COBRA) methods are widely
used for genome-scale modeling of metabolic networks in both prokaryotes
and eukaryotes. COBRApy is a constraint-based modeling package that is
designed to accommodate the biological complexity of the next generation
of COBRA models and provides access to commonly used COBRA methods, such
as flux balance analysis, flux variability analysis, and gene deletion
analyses.

To install, please follow the `instructions <INSTALL.md>`__.

The documentation is browseable online at
`readthedocs <https://cobrapy.readthedocs.org/en/stable/>`__ and can
also be
`downloaded <https://readthedocs.org/projects/cobrapy/downloads/>`__.

Please use the `Google
Group <http://groups.google.com/group/cobra-pie>`__ for help.
Alternatively, you can use
`gitter.im <https://gitter.im/opencobra/cobrapy>`__ for quick questions
and discussions about cobrapy (faster response times).

More information about opencobra is available at the
`website <http://opencobra.github.io/>`__.

If you use cobrapy in a scientific publication, please cite
`doi:10.1186/1752-0509-7-74 <http://dx.doi.org/doi:10.1186/1752-0509-7-74>`__

License
-------

The cobrapy source is released under both the GPL and LGPL licenses. You
may choose which license you choose to use the software under. However,
please note that binary packages which include GLPK (such as the binary
wheels distributed at https://pypi.python.org/pypi/cobra) will be bound
by its license as well.

This program is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License or the Lesser GNU
General Public License as published by the Free Software Foundation,
either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
Public License for more details.

.. |Build Status| image:: https://travis-ci.org/opencobra/cobrapy.svg?branch=master
   :target: https://travis-ci.org/opencobra/cobrapy
.. |Coverage Status| image:: https://codecov.io/github/opencobra/cobrapy/coverage.svg?branch=master
   :target: https://codecov.io/github/opencobra/cobrapy
.. |Build status| image:: https://ci.appveyor.com/api/projects/status/2o549lhjyukke8nd/branch/master?svg=true
   :target: https://ci.appveyor.com/project/hredestig/cobrapy/branch/master
.. |PyPI| image:: https://img.shields.io/pypi/v/cobra.svg
   :target: https://pypi.python.org/pypi/cobra
.. |Gitter| image:: https://badges.gitter.im/opencobra/cobrapy.svg
   :target: https://gitter.im/opencobra/cobrapy?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge


Installation of cobrapy
=======================

For installation help, please use the `Google
Group <http://groups.google.com/group/cobra-pie>`__. For usage
instructions, please see the
`documentation <https://cobrapy.readthedocs.org/en/latest/>`__.

--------------

All releases require Python 2.7+ or 3.4+ to be installed before
proceeding. Mac OS X (10.7+) and Ubuntu ship with Python. Windows users
without python can download and install python from the `python
website <https://www.python.org/ftp/python/2.7.9/python-2.7.9.amd64.msi>`__.
Please note that though Anaconda and other python distributions may work
with cobrapy, they are not explicitly supported (yet!).

Stable version installation
---------------------------

cobrapy can be installed with any recent installation of pip.
Instructions for several operating systems are below:

Mac OS X or Linux
~~~~~~~~~~~~~~~~~

0. `install
   pip <http://pip.readthedocs.org/en/latest/installing.html>`__.
1. In a terminal, run ``sudo pip install cobra``

Microsoft Windows
~~~~~~~~~~~~~~~~~

The preferred installation method on Windows is also to use pip. The
latest Windows installers for Python 2.7 and 3.4 include pip, so if you
use those you will already have pip.

1. In a terminal, run ``C:\Python27\Scripts\pip.exe install cobra`` (you
   may need to adjust the path accordingly).

To install without pip, you will need to download and use the
appropriate installer for your version of python from the `python
package index <https://pypi.python.org/pypi/cobra/>`__.

Hacking version installation
----------------------------

Use pip to install `Cython <http://cython.org/>`__. Install libglpk
using your package manger. This would be
``brew install homebrew/science/glpk`` on a Mac and
``sudo apt-get install libglpk-dev`` on debian-based systems (including
Ubuntu and Mint). GLPK can also be compiled from the released source.

Clone the git repository using your preferred mothod. Cloning from your
own `github fork <https://help.github.com/articles/fork-a-repo>`__ is
recommended! Afterwards, open a terminal, enter the cobrapy repository
and run the following command:

::

    python setup.py develop --user

Installation of optional dependencies
=====================================

Optional Dependencies
---------------------

On windows, these can downloaded from [this site]
(http://www.lfd.uci.edu/~gohlke/pythonlibs/). On Mac/Linux, they can be
installed using pip, or from the OS package manager (e.g brew, apt,
yum).

1. `libsbml <http://sbml.org>`__ >= 5.10 to read/write SBML level 2
   files

   -  `Windows
      installer <http://www.lfd.uci.edu/~gohlke/pythonlibs/#libsbml>`__
   -  Use ``sudo pip install python-libsbml`` on Mac/Linux

2. `lxml <http://lxml.de/>`__ to speed up read/write of SBML level 3
   files.
3. `numpy <http://numpy.org>`__ >= 1.6.1 for double deletions

   -  `Windows
      installer <http://www.lfd.uci.edu/~gohlke/pythonlibs/#numpy>`__

4. `scipy <http://scipy.org>`__ >= 0.11 for ArrayBasedModel and saving
   to \*.mat files.

   -  `Windows
      installer <http://www.lfd.uci.edu/~gohlke/pythonlibs/#scipy>`__

Other solvers
-------------

cobrapy comes with bindings to the GNU Linear Programming Kit ([glpk]
(http://www.gnu.org/software/glpk/)) using its own bindings called
"cglpk" in cobrapy. In addition, cobrapy currently supports these linear
programming solvers:

-  ILOG/CPLEX (available with
   `Academic <https://www.ibm.com/developerworks/university/academicinitiative/>`__
   and
   `Commercial <http://www.ibm.com/software/integration/optimization/cplex-optimizer/>`__
   licenses).
-  `gurobi <http://gurobi.com>`__
-  `QSopt\_ex
   esolver <http://www.dii.uchile.cl/~daespino/ESolver_doc/main.html>`__
-  `MOSEK <http://www.mosek.com/>`__
-  `coin-or clp and cbc <http://coin-or.org/>`__ through
   `cylp <https://github.com/coin-or/CyLP>`__.

ILOG/CPLEX, MOSEK, and Gurobi are commercial software packages that
currently provide free licenses for academics and support both linear
and quadratic programming. GLPK and clp are open source linear
programming solvers; however, they may not be as robust as the
commercial solvers for mixed-integer and quadratic programming.
QSopt\_ex esolver is also open source, and can solve linear programs
using rational operations, giving exact solutions.

Testing your installation
=========================

1. Start python
2. Type the following into the Python shell

.. code:: python

    from cobra.test import test_all
    test_all()

You should see some skipped tests and expected failures, and the
function should return ``False``.


