Skip to main content

atomate2

tests code coverage pypi version supported python versions Zenodo This project supports Python 3.10+ PyPI

Documentation | PyPI | GitHub

Atomate2 is a free, open-source software for performing complex materials science workflows using simple Python functions. Features of atomate2 include

  • It is built on open-source libraries: pymatgen, custodian, jobflow, and jobflow-remote or FireWorks.
  • A library of "standard" workflows to compute a wide variety of desired materials properties.
  • The ability scale from a single material, to 100 materials, or 100,000 materials.
  • Easy routes to modifying and chaining workflows together.
  • It can build large databases of output properties that you can query, analyze, and share in a systematic way.
  • It automatically keeps meticulous records of jobs, their directories, runtime parameters, and more.

Workflows

Some of the workflows available in atomate2 are:

  • electronic band structures
  • elastic, dielectric, and piezoelectric tensors
  • one-shot electron-phonon interactions
  • electronic transport using AMSET
  • phonons using phonopy
  • defect formation energy diagrams
  • Lobster bonding analysis with lobsterpy

It is easy to customise and compose any of the above workflows.

Quick start

Workflows in atomate2 are written using the jobflow library. Workflows are generated using Maker objects which have a consistent API for modifying input settings and chaining workflows together. Below, we demonstrate how to run a band structure workflow (see the documentation for more details). In total, 4 VASP calculations will be performed:

  1. A structural optimisation.
  2. A self-consistent static calculation on the relaxed geometry.
  3. A non-self-consistent calculation on a uniform k-point mesh (for the density of states).
  4. A non-self-consistent calculation on a high symmetry k-point path (for the line mode band structure).
from atomate2.vasp.flows.core import RelaxBandStructureMaker
from jobflow import run_locally
from pymatgen.core import Structure

# construct a rock salt MgO structure
mgo_structure = Structure(
    lattice=[[0, 2.13, 2.13], [2.13, 0, 2.13], [2.13, 2.13, 0]],
    species=["Mg", "O"],
    coords=[[0, 0, 0], [0.5, 0.5, 0.5]],
)

# make a band structure flow to optimise the structure and obtain the band structure
bandstructure_flow = RelaxBandStructureMaker().make(mgo_structure)

# run the flow
run_locally(bandstructure_flow, create_folders=True)

Before the above code can run successfully, you'll need to

  • tell pymatgen where to find your pseudopotential files
  • tell atomate2 where to find your VASP binary
  • (optionally) prepare an external database to store the job output

See the installation steps for details how to set all of this up.

In this example, we execute the workflow immediately. In many cases, you might want to perform calculations on several materials simultaneously. To achieve this, all atomate2 workflows can be run using the jobflow-remote or FireWorks software. See the jobflow-remote-specific documentation or fireworks-specific documentation for more details.

Installation

Atomate2 is a Python 3.10+ library and can be installed using pip. Full installation and configuration instructions are provided in the installation tutorial.

Tutorials

The documentation includes comprehensive tutorials and reference information to get you started:

In March 2025, the first dedicated school on atomate2 (including the workflow language jobflow and the workflow manager jobflow-remote) took place, and one can access the video material here:

Need help?

Ask questions about atomate2 on the atomate2 support forum. If you've found an issue with atomate2, please submit a bug report on GitHub Issues.

What’s new?

Track changes to atomate2 through the changelog.

Contributing

We greatly appreciate any contributions in the form of a pull request. Additional information on contributing to atomate2 can be found here. We maintain a list of all contributors here.

License

Atomate2 is released under a modified BSD license; the full text can be found here.

Acknowledgements

The development of atomate2 has benefited from many people across several research groups. A full list of contributors can be found here.

Citing atomate2

If you use atomate2, please cite the following article:

@article{ganose2025_atomate2,
	title = {Atomate2: modular workflows for materials science},
	author = {Ganose, Alex M. and Sahasrabuddhe, Hrushikesh and Asta, Mark and Beck, Kevin and Biswas, Tathagata and Bonkowski, Alexander and Bustamante, Joana and Chen, Xin and Chiang, Yuan and Chrzan, Daryl C. and Clary, Jacob and Cohen, Orion A. and Ertural, Christina and Gallant, Max C. and George, Janine and Gerits, Sophie and Goodall, Rhys E. A. and Guha, Rishabh D. and Hautier, Geoffroy and Horton, Matthew and Inizan, T. J. and Kaplan, Aaron D. and Kingsbury, Ryan S. and Kuner, Matthew C. and Li, Bryant and Linn, Xavier and McDermott, Matthew J. and Mohanakrishnan, Rohith Srinivaas and Naik, Aakash A. and Neaton, Jeffrey B. and Parmar, Shehan M. and Persson, Kristin A. and Petretto, Guido and Purcell, Thomas A. R. and Ricci, Francesco and Rich, Benjamin and Riebesell, Janosh and Rignanese, Gian-Marco and Rosen, Andrew S. and Scheffler, Matthias and Schmidt, Jonathan and Shen, Jimmy-Xuan and Sobolev, Andrei and Sundararaman, Ravishankar and Tezak, Cooper and Trinquet, Victor and Varley, Joel B. and Vigil-Fowler, Derek and Wang, Duo and Waroquiers, David and Wen, Mingjian and Yang, Han and Zheng, Hui and Zheng, Jiongzhi and Zhu, Zhuoying and Jain, Anubhav},
	year = {2025},
	journal = {Digital Discovery},
	doi = {10.1039/D5DD00019J},
	url = {https://doi.org/10.1039/D5DD00019J},
	urldate = {2025-07-01},
}

Release files for atomate2 0.1.5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for atomate2 0.1.5
File Size Uploaded
atomate2-0.1.5.tar.gz 434.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for atomate2 0.1.5
File Interpreter ABI Platform
atomate2-0.1.5-py3-none-any.whl Python 3 none any Details

Total release size: 993.0 kB

Release files / atomate2-0.1.5.tar.gz

Download URL atomate2-0.1.5.tar.gz
Size 434.2 kB
Tags Source
SHA-256 checksum
How to use checksums
4e8e566d07b7b241357e25892c8deb77b33ff01e3c772770fafa27aec1b9f032
BLAKE2b-256 checksum
How to use checksums
4114b4ad27df49f246c39ee596508b032352a60822957b146147fba8a17bd66d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / atomate2-0.1.5-py3-none-any.whl

Download URL atomate2-0.1.5-py3-none-any.whl
Size 558.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
a117820b2a61d85ebe4b9aa5ed1d92dabcbca98713c9c487279b50c5a484920d
BLAKE2b-256 checksum
How to use checksums
9a8ef8df1086621ae68bd3d607ef10ee8569894871ca2060972a8bc89292a843
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page