InstallationĀ¶

PyPI package Conda package Supported Python versions

Quick installationĀ¶

The fastest way of installing this package is through PyPI or Conda:

python3 -m pip install tensorwaves[jax]

To install the package with support for amplitude analysis run:

python3 -m pip install tensorwaves[jax,pwa]
conda install -c conda-forge tensorwaves jax jaxlib

To install the package with support for amplitude analysis run:

conda install -c conda-forge ampform phasespace

This installs the latest release that you can find on the stable branch.

Optional dependencies can be installed as follows:

pip install tensorwaves[pwa]  # installs tensorwaves with ampform
pip install tensorwaves[jax,scipy,tf]
pip install tensorwaves[all]  # all runtime dependencies

The latest version on the main branch (or any other branch, tag, or commit) can be installed as follows:

python3 -m pip install git+https://github.com/ComPWA/tensorwaves@main

Or, with optional dependencies:

python3 -m pip install "tensorwaves[jax,pwa] @ git+https://github.com/ComPWA/tensorwaves@main"

Editable installationĀ¶

If you are working on amplitude analysis, we highly recommend using the more dynamic ā€˜editable installationā€™ instead. This allows you to:

For this, you first need to get the source code with Git:

git clone https://github.com/ComPWA/tensorwaves.git
cd tensorwaves

Next, you install the project in editable mode with either Conda or pip. Itā€™s recommended to use Conda, because this also pins the version of Python.

conda env create

This installs the project in a Conda environment following the definitions in environment.yml.

  1. [Recommended] Create a virtual environment with venv (see here).

  2. Install the project as an ā€˜editable installationā€™ with additional packages for the developer and all dependencies pinned through constraints files:

    python3 -m pip install -c .constraints/py3.x.txt -e .[dev]
    

See Updating for how to update the dependencies when new commits come in.

Thatā€™s all! Have a look at General examples to try out the package. You can also have a look at Help developing for tips on how to work with this ā€˜editableā€™ developer setup!