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, list_of_training_structure)
opt = Optimizer(sc.get_fit_data())
opt.train()
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.

Installation

In the most simple case, icet can be installed using pip as follows:

pip3 install icet --user

or alternatively:

python3 -m pip install icet --user

Installation 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, numpy, scipy, scitkit-learn, and spglib.

Credits

  • Mattias Ångqvist
  • William A. Muñoz
  • Magnus Rahm
  • Erik Fransson
  • Céline Durniak
  • Piotr Rozyczko
  • Thomas Holm Rod
  • Paul Erhart

icet has been developed at Chalmers University of Technology in Gothenburg (Sweden) in the Materials and Surface Theory division at the Department of Physics, in collaboration with the Data Analysis group at the Data Management and Software Center of the European Spallation Source in 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)

icet and its development are hosted on gitlab. Bugs and feature requests are ideally submitted via the gitlab issue tracker. The development team can also be reached by email via icet@materialsmodeling.org.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
icet-0.5.tar.gz (1.6 MB) Copy SHA256 hash SHA256 Source None

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page