Package: atomate2
atomate2Documentation|PyPI|GitHubAtomate2 is a free, open-source software for performing complex materials science
workflows using simple Python functions. Features of atomate2 includeIt is built on open-source libraries:pymatgen,custodian,jobflow, andFireWorks.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.Note: Atomate2 is primarily built to work with theVASPelectronic structure
software, but we are actively working on adding more codes.WorkflowsSome of the workflows available in atomate2 are:electronic band structureselastic, dielectric, and piezoelectric tensorsone-shot electron-phonon interactionselectronic transport usingAMSETphonons usingphonopydefect formation energy diagramsLobsterbonding analysis withlobsterpyIt is easy to customise and compose any of the above workflows.Quick startWorkflows in atomate2 are written using thejobflowlibrary. Workflows are generated usingMakerobjects which have a consistent API for modifying input settings and chaining
workflows together. Below, we demonstrate how to run a band structure workflow
(see thedocumentationfor more details). In total, 4 VASP
calculations will be performed:A structural optimisation.A self-consistent static calculation on the relaxed geometry.A non-self-consistent calculation on a uniform k-point mesh (for the density of
states).A non-self-consistent calculation on a high symmetry k-point path (for the line mode
band structure).fromatomate2.vasp.flows.coreimportRelaxBandStructureMakerfromjobflowimportrun_locallyfrompymatgen.coreimportStructure# construct a rock salt MgO structuremgo_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 structurebandstructure_flow=RelaxBandStructureMaker().make(mgo_structure)# run the flowrun_locally(bandstructure_flow,create_folders=True)Before the above code can run successfully, you'll need totell pymatgen where tofind your pseudopotential filestell atomate2 where to find your VASP binary(optionally) prepare an external database to store the job outputSee theinstallationsteps 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 theFireWorkssoftware. See thedocumentationfor more details.InstallationAtomate2 is a Python 3.8+ library and can be installed using pip. Full installation
and configuration instructions are provided in theinstallation tutorial.TutorialsThe documentation includes comprehensive tutorials and reference information to get you
started:Introduction to running workflowsUsing atomate2 with FireWorksList of VASP workflowsNeed help?Ask questions about atomate2 on theatomate2 support forum.
If you've found an issue with atomate2, please submit a bug report onGitHub Issues.What’s new?Track changes to atomate2 through thechangelog.ContributingWe greatly appreciate any contributions in the form of a pull request.
Additional information on contributing to atomate2 can be foundhere.
We maintain a list of all contributorshere.LicenseAtomate2 is released under a modified BSD license; the full text can be foundhere.AcknowledgementsThe development of atomate2 has benefited from many people across several research groups.
A full list of contributors can be foundhere.