Skip to main content

Python package for breeding program numerical optimization and simulation

Project description

PyBrOpS

Python Breeding Optimizer and Simulator: A Python library for simulating breeding programs and optimizing breeding-related problems.

Detailed Documentation

A full website hosting all documentation can be found at the project GitHub Pages website. Please consult the documentation to learn how to use PyBrOpS.

General installation requirements

  1. Python 3.8.0+

Notes on Linux installation requirements

You will need to install Python developmental headers in addition to Python 3.8.0+. Even though PyBrOpS is written in pure Python, some of its dependencies require compilation.

Commands for installing Python developmental headers:

Linux Distro Command
Fedora sudo dnf install python3-devel
Ubuntu sudo apt install python3-dev

Python package dependencies

PyBrOpS relies on several dependencies. They are:

  1. cyvcf2-0.30.14+ (reading VCFs)
  2. cvxpy-1.1.18+ (linear programming)
  3. pymoo-0.6.0+ (genetic algorithms)
  4. h5py-3.6.0+ (HDF5 file support)
  5. matplotlib-3.5.1+ (graphics)
  6. numpy-1.22.2+ (matrix storage and algebra)
  7. pandas-1.4.1+ (data frames)
  8. pytest-7.0.1+ (unit tests)
  9. pytest-datadir-1.3.1+ (unit tests)
  10. scipy-1.8.0+ (miscellaneous numerical routines)
  11. setuptools
  12. wheel

Developmental version installation

To install first clone the repository:

git clone https://github.com/rzshrote/pybrops.git

It is a best practice to create a virtual environment where PyBrOpS dependencies can be installed. To do this, you can use the Makefile:

make install-devel

Alternatively, this may be done manually using the following commands:

python3 -m venv env
. env/bin/activate
python3 -m pip install --editable .

Next, you must activate the virtual environment using either the . command (for sh) or the source command (for bash):

. env/bin/activate

or

source env/bin/activate

Now that the virtual environment is activated, you can access pybrops through the python3 command-line interface prompt and through script execution.

Documentation generation

Non-exhaustive list for building

source env/bin/activate

pip3 install sphinx-autodoc-typehints sphinx_rtd_theme pydata_sphinx_theme

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

pybrops-1.0.3.tar.gz (521.8 kB view details)

Uploaded Source

Built Distribution

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

pybrops-1.0.3-py3-none-any.whl (876.5 kB view details)

Uploaded Python 3

File details

Details for the file pybrops-1.0.3.tar.gz.

File metadata

  • Download URL: pybrops-1.0.3.tar.gz
  • Upload date:
  • Size: 521.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.12.3

File hashes

Hashes for pybrops-1.0.3.tar.gz
Algorithm Hash digest
SHA256 1ed5ab62d91f46b51dc5d8a1a989b9dad5fc48eaec7bb4951037c850ceecc777
MD5 b79aceadd101ff357447c65dd22b2006
BLAKE2b-256 93ef52b5703e3f95a1dda0d5936f95ec1506cb2161b742d94c3f6f65db30e179

See more details on using hashes here.

File details

Details for the file pybrops-1.0.3-py3-none-any.whl.

File metadata

  • Download URL: pybrops-1.0.3-py3-none-any.whl
  • Upload date:
  • Size: 876.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.12.3

File hashes

Hashes for pybrops-1.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 8c289b83440407930e3d4e83c7d840efc9ac72fa46e01ac86014577db0d30624
MD5 138e816c7198af0b8d78dc42cccdbaba
BLAKE2b-256 c5aec5d25af9b5348e343e4de38275e2f0dae2e744f1e74618000b35665dd0e2

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