Skip to main content

A Pythonic approach to cluster expansions

Project description

icet is a tool for the construction and sampling of alloy cluster expansions. A detailed description of the functionality provided as well as an extensive tutorial can be found in the user guide.

icet is written in Python, which allows easy integration with countless first-principles codes and analysis tools accessible from Python, and allows for a simple and intuitive user interface. All computationally demanding parts are, however, written in C++ providing performance while maintaining portability. The following snippet illustrates how one can train a cluster expansion:

cs = ClusterSpace(primitive_cell, cutoffs, species)
sc = StructureContainer(cs)
for structure in training_structures:
opt = Optimizer(sc.get_fit_data())
ce = ClusterExpansion(cs, opt.parameters)

Afterwards the cluster expansion can be used, e.g., for finding ground state structures or sampled via Monte Carlo simulations.

For questions and help please use the icet discussion forum on icet and its development are hosted on gitlab.


icet can be installed using pip:

pip3 install icet --user

or via conda:

conda install -c conda-forge icet

Installation via pip requires a C++11 compliant compiler. Please consult the installation section of the user guide for details.

icet is based on Python3 and invokes functionality from other Python libraries including ase, pandas, numba, numpy, scipy, spglib, and trainstation.


icet has been developed at the Department of Physics of Chalmers University of Technology (Gothenburg, Sweden) and the Data and Software Management Center at the European Spallation Source (Copenhagen, Denmark).

When using icet in your research please cite

M. Ångqvist, W. A. Muñoz, J. M. Rahm, E. Fransson, C. Durniak, P. Rozyczko, T. H. Rod, and P. Erhart
ICET – A Python Library for Constructing and Sampling Alloy Cluster Expansions
Adv. Theory. Sim., 1900015 (2019)

Also consult the credits page of the documentation for additional references.

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

icet-2.2.tar.gz (4.0 MB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page