Installation#

Required dependencies#

  • Python (3.9 or later)

  • numba (0.50.1 or later)

  • numpy

Optional dependencies#

Note

When using pip to install multimodemodel, optional dependencies can be installed by specifying extras. Instructions are given below.

Instructions#

First clone the repository:

$ git clone https://github.com/vopikamm/multimode-model.git

Switch to the directory and install multimodemodel with:

$ cd multimodemodel
$ pip install .

Note that for development you can also install multimodemodel with the editable flag:

$ pip install -e .

We also maintain other dependency sets for additional subsets of functionality:

$ pip install .[xarray]    # Install optional dependencies for conversion to xarray
$ pip install .[test]      # Install optional dependencies for testing
$ pip install .[lint]      # Install optional dependencies for linting
$ pip install .[examples]  # Install optional dependencies for examples
$ pip install .[complete]  # Install all the above
$ pip install .[docs]      # Install all above plus dependencies for building the documentation

The above commands install the optional dependencies. To know which dependencies would be installed, take a look at the [options.extras_require] section in setup.cfg:

[options.extras_require]
xarray =
    xarray

test =
    pytest
    pytest-benchmark
    pytest-cov

lint =
    %(test)s
    flake8
    black
    mypy == 0.931

examples =
    %(xarray)s
    ipython
    matplotlib
    distributed
    bokeh>=2.1.1

complete =
    %(xarray)s
    %(test)s
    %(lint)s
    %(examples)s

docs =
    %(complete)s
    sphinx >= 5.0, <8
    ipython
    ipykernel
    jupyter-client
    nbsphinx
    sphinx-book-theme >= 0.0.38
    # scanpydoc
    # sphinx_rtd_theme
    # sphinx-copybutton
    # sphinx-panels
    # sphinxext-rediraffe
    # sphinxext-opengraph

Testing#

To run the test suite after installing multimodemodel, install (via pypi or conda) py.test and run pytest in the root directory of the package.