Installation#

Installation from PyPI or conda#

Stable versions of icet are provided via PyPi and as part of conda-forge. This implies that icet can be installed using pip via:

pip install icet --user

or using conda via:

conda install -c conda-forge icet

The PyPI package is provided as a source distribution. As a result, the C++ core library has to be compiled as part of the installation, which requires a C++17 compliant compiler to be installed on your system. By contrast the conda package contains pre-compiled binaries.

Installing the development version#

If you want to use the most recent (development) version you can install directly from the git repository:

pip install --user git+https://gitlab.com/materials-modeling/icet.git

Testing#

To test that your installation works as expected, clone the repository, install the package with the test extras, and run the test suite with pytest:

git clone https://gitlab.com/materials-modeling/icet.git
cd icet
pip install -e ".[test]"
pytest tests/

Dependencies#

icet requires Python 3.10 or later and invokes functionality from other Python libraries, including ase, numba, numpy, pandas, scipy, spglib, and trainstation. The icet C++ core library depends on Eigen and pybind11. Eigen is included in the distribution as a third-party library, while pybind11 is required only to build the C++ core and is installed automatically. The licenses of these libraries are summarized in THIRD_PARTY_LICENSES.md.