The High-Throughput Toolkit (httk)

The High-Throughput Toolkit (httk) is a toolkit for preparing and running calculations, analyzing the results, and storing results in global and/or personalized databases. httk is presently targeted at atomistic calculations in materials science and electronic structure, but aims to be extended into a library useful also outside those areas.

httk was created in 2014. This site describes httk₂, the current main version.

httk₂ is a rewrite of httk as a modular toolkit: instead of a single monolithic package, its functionality is split across independent module repositories that share a common, PEP 420 native httk.* namespace (httk.core, httk.io, httk.atomistic, and more). This lets you install and depend on only the parts you need, while httk.core provides the shared plugin, loading, and view/backend machinery the other modules build on.

Looking for httk version 1? The legacy site is available at /v1/.

Installation

The httk2 metapackage installs a standard selection of modules in one step.

  • Clone the source code repository and install it:

  • Or install the metapackage from PyPI:

Quickstart

A few simple usage examples

Load a cif file

With httk-io and httk-atomistic installed, httk.core.load loads CIF, POSCAR, and CONTCAR files directly into httk₂ Structure objects.

Create structures in code

In httk₂, a Structure is created from an explicit cell, a list of sites in reduced coordinates, a list of species (given as OPTIMADE-style species dictionaries), and a per-site list naming the species at each site. Here is a conventional cubic rock-salt (NaCl) cell:

Running this generates the output:

Species: ['Na', 'Cl']
Number of sites: 8
Atomic numbers: (11, 11, 11, 11, 17, 17, 17, 17)

Databases

httk-data provides relational storage and querying over SQLite and DuckDB. See the database documentation.

Reporting bugs

Please file bugs at the issue tracker of the relevant module repository within the httk GitHub organization (please search first to check if it is already reported):

Citing httk in scientific works

This is presently the preferred citation:

  • R. Armiento et al., The High-Throughput Toolkit (httk), http://httk.org/; Armiento R. (2020) Database-Driven High-Throughput Calculations and Machine Learning Models for Materials Design. In: Schütt K., Chmiela S., von Lilienfeld O., Tkatchenko A., Tsuda K., Müller KR. (eds) Machine Learning Meets Quantum Physics. Lecture Notes in Physics, vol 968. Springer, Cham. https://doi.org/10.1007/978-3-030-40245-7_17

Since httk may call upon many other pieces of software quite transparently, it may not be initially obvious what other software should be cited. Unless configured otherwise, httk prints out a list of citations when the program ends. You should take note of those citations and include them in your publications if relevant.

More documentation

More extensive documentation about httk is available at https://docs.httk.org