This is the documentation for asr.convex_hull-recipe. This recipe is comprised of a single instruction, namely:

Run this recipe through the CLI interface

$ asr run asr.convex_hull

or as a python module

$ python -m asr.convex_hull

Detailed description

Convex hull stability analysis.



asr.convex_hull.main(atoms, calculator={'charge': 0, 'convergence': {'bands': 'CBM+3.0'}, 'kpts': {'density': 12.0, 'gamma': True}, 'mode': {'ecut': 800, 'name': 'pw'}, 'name': 'gpaw', 'nbands': '200%', 'occupations': {'name': 'fermi-dirac', 'width': 0.05}, 'txt': 'gs.txt', 'xc': 'PBE'}, databases=[])[source]

Calculate convex hull energies.

It is assumed that the first database supplied is the one containing the standard references.

For a database to be a valid reference database each row has to have a “uid” key-value-pair. Additionally, it is required that the metadata of each database contains following keys:

  • title: Title of the reference database.

  • legend: Collective label for all references in the database to put on the convex hull figures.

  • name: f-string from which to derive name for a material.

  • link: f-string from which to derive an url for a material (see further information below).

  • label: f-string from which to derive a material specific name to put on convex hull figure.

  • method: String denoting the method that was used to calculate reference energies. Currently accepted strings: [‘DFT’, ‘DFT+D3’]. “DFT” means bare DFT references energies. “DFT+D3” indicate that the reference also include the D3 dispersion correction.

  • energy_key (optional): Indicates the key-value-pair that represents the total energy of a material from. If not specified the default value of ‘energy’ will be used.

The name and link keys are given as f-strings and can this refer to key-value-pairs in the given database. For example, valid metadata looks like:

    "title": "Bulk reference phases",
    "legend": "Bulk",
    "name": "{row.formula}",
    "link": "{row.uid}",
    "label": "{row.formula}",
    "method": "DFT",
    "energy_key": "total_energy"
  • databases (list of str) – List of filenames of databases.

  • atoms (ase.atoms.Atoms) –

  • calculator (dict) –

Return type


class asr.convex_hull.Result(ehull, coefs, hform, references, indices, thermodynamic_stability_level)[source]
  • ehull (float) –

  • coefs (Optional[List[float]]) –

  • hform (float) –

  • references (List[dict]) –

  • indices (Optional[List[int]]) –

  • thermodynamic_stability_level (str) –

property coefs: Optional[List[float]]

Fraction of decomposing references (see indices doc).

Return type


property ehull: float

Energy above convex hull [eV/atom].

Return type


property hform: float

Heat of formation [eV/atom].

Return type


property indices: Optional[List[int]]

Indices of references that this structure will decompose into.

Return type


property references: List[dict]

List of relevant references.

Return type


property thermodynamic_stability_level: str

Thermodynamic stability level.

Return type