Get started

Dependencies

The following packages are required for normal use

  • Python >= 3.9

  • NumPy

  • SciPy (for special functions)

  • Spglib >= 2.5.0 (for symmtery detection)

These dependencies can be installed by

pip install -r requirements.txt

or

# assume you already have virtual environment `myenv`
conda install -c conda-forge -n myenv --file requirements.txt

if you use conda.

There are also optional depedencies

  • lxml and BeautifulSoup4 (for XML and HTML parser)

  • argcomplete (for completing scripts arguments from command line)

  • matplotlib (for some scripts and utilites under visual/pyplot module)

They are declared in requirements_optional.txt and can be installed like above.

Installation

You need to adjust PYTHONPATH and PATH environment variables to use Mushroom python package and scripts in scripts Assume that Mushroom is cloned to path/to/mushroom.

export PYTHONPATH="path/to/mushroom:$PYTHONPATH"
export PATH="path/to/mushroom/scripts:$PATH"

Test

Extra dependencies have to be installed to test the code. Among them, pytest is the fundamental one

pip install pytest

Then you can test this pacakge by running pytest

pytest

at the root path of mushroom.

Note that some tests will not run if you do not have all (basic and optional) dependencies included. To enable a full test, please install all the runtime and test dependencies in requirements_test.txt. This can be done in the same way as descibed in Dependencies.