Skip to main content

A tool for the computation of steady states and exploration of dynamics in ternary intracellular biological networks.

Project description

SteadyCellPhenotype

A tool for the computation of steady states and exploration of dynamics in intracellular biological networks.

Developers and Research Team

Adam Knapp (Developer), Julia Chifman (PI), Luis Sordo-Vieira (Co-PI), Reinhard Laubenbacher (Co-PI)

Funding by College of Arts and Sciences Mellon Fund, American University. (2019)

Background

Ternary models

Examples

Installation and Operation

The app is implemented in Python 3 with the help of a variety of packages including flask, matplotlib, networkx, numba, pathos, and attrs. Some of these may be installed by default if you have installed the standard anaconda distribution. Others need to use pip to install it. If the version of python on your system is version 3 (check using python --version) you can install these dependencies using

python -m pip install -r requirements.txt

from the steadycellphenotype directory. Commonly, such as on Mac or Linux-based systems, Python 3.x is installed as python3 and you will need to run

python3 -m pip install -r requirements.txt

Then, on mac or linux, the site can then be started by

./start_scp.sh

You can also install SteadyCellPhenotype as a python package via pip:

python3 -m pip install -e .

This will add two executables to your path, start_scp.sh and scp_converter.py. You can also install SteadyCellPhenotype in a virtual environment, see below, which may help with package versioning issues.

Assuming that you are in the top directory of this project. This will open up a web server on the loopback address on port 5000. If that's gibberish, what I mean is that

  • It won't be accessible to the broader internet and
  • On the same machine, you can point your web browser at http://localhost:5000 and access the site.

The flask documentation contains info on how to get the thing working for remote users. Flask documentation

Note:

Instructions on obtaining Macaulay2 are here. In particular, here is where you can get Debian packages.

Using a virtual environment

If you encounter compatibility errors between various python and package versions on your computer, it may be useful to create a virtual environment with project-specific versions. (e.g. as of this writing there are issues with the current versions of numba and python 3.9 on MacOS.) To create a virtual environment, first find the desired version of python on your machine. (We assume 3.8 below.) Hint: On MacOS and Linux, we can use

find / -name python3.8 2>&1 | grep -v "Permission denied"

to find all copies of the python 3.8 executable on the system. Then, using the desired copy of python, run

/whatever/path/to/python/you/found/python3.8 -m venv stdy-cll-phntyp-venv

replacing stdy-cll-phntyp-venv with whatever folder name you desire the virtual environment to reside in. (Often we choose venv inside of the source directory.) All packages which we install will reside in this directory. Then whenever we want to enter the virtual environment, we run

source stdy-cll-phntyp-venv/bin/activate

Now run

python3 -m pip install -e .

scp_converter.py command-line usage

Running scp_converter.py --help displays information about command line options

usage: scp_converter.py [-h] [-i INPUTFILE] [-o OUTPUTFILE] [-n] [-no-polys] [-sim] [-graph] [-init-val INIT_VAL [INIT_VAL ...]] [--count COUNT] [-c]
                  [-comit CONTINUOUS_OMIT [CONTINUOUS_OMIT ...]] [-power SELF_POWER]

Converter from MAX/MIN/NOT formulae to either low-degree polynomials over F_3 or a C-language simulator

optional arguments:
  -h, --help            show this help message and exit
  -i INPUTFILE, --inputfile INPUTFILE
                        input filename containing MAX/MIN/NOT formulae. required.
  -o OUTPUTFILE, --outputfile OUTPUTFILE
                        output filename for the polynomial formulae. if not provided, stdout is used
  -n, --non_descriptive
                        use non-descriptive names for variables
  -no-polys             do not output polynomials, used by default when output is by simulator
  -sim                  output C-language simulator program
  -graph                use the graph-creation simulator
  -init-val INIT_VAL [INIT_VAL ...]
                        for simulators, fix initial values got some variables Ex: -init-val LIP 1
  --count COUNT         number of random points tried by the simulator, default 1,000,000. Ignored if the -sim flag is not used
  -c, --continuous      generate polynomials for continuous system, applied before the self-power operation
  -comit CONTINUOUS_OMIT [CONTINUOUS_OMIT ...], --continuous-omit CONTINUOUS_OMIT [CONTINUOUS_OMIT ...]
                        list of variables to _not_ apply continuity operation to
  -power SELF_POWER, --self-power SELF_POWER
                        gets polynomials for a power of the system. i.e. self-composition, power-1 times (default: 1) ignored for simulator Warning: This can take a long
                        time!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

steady_cell_phenotype-0.1.4.tar.gz (2.3 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

steady_cell_phenotype-0.1.4-py3-none-any.whl (2.4 MB view details)

Uploaded Python 3

File details

Details for the file steady_cell_phenotype-0.1.4.tar.gz.

File metadata

  • Download URL: steady_cell_phenotype-0.1.4.tar.gz
  • Upload date:
  • Size: 2.3 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.3.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.9.5

File hashes

Hashes for steady_cell_phenotype-0.1.4.tar.gz
Algorithm Hash digest
SHA256 c1a74a3698726882bd292812c93dc948b7e5cdd727306b47147d95288a7d293d
MD5 dbdbc9675549885ae8a58f0524c18967
BLAKE2b-256 2429e7bb3938572ada18c57946ee1441f34c0e49b996d77e4933561f25818983

See more details on using hashes here.

File details

Details for the file steady_cell_phenotype-0.1.4-py3-none-any.whl.

File metadata

  • Download URL: steady_cell_phenotype-0.1.4-py3-none-any.whl
  • Upload date:
  • Size: 2.4 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.3.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.9.5

File hashes

Hashes for steady_cell_phenotype-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 ed4b97b8a4beeb4c932c1f16c3ce4456a94c937119dc1d7ace5c7f9db5f89bc3
MD5 f618ef81f049d633ef4dd4dde4b56695
BLAKE2b-256 fabbe91e97f13a00abdc26132fe16f371143fe95262c6043e8ebda97310771a4

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page