Background: I am a geochemist by training. I am trying to solidify my understanding of the methods used for calculating the energy above the the convex hull. I am using triclinic VFeO4 as an example.
Question: What is the reason for the difference between the energy above the hull for VFeO4 (mp-504509) returned by the API (0.414647 eV/atom) and the energy manually calculated from the formation energies for each of the species in the decomposition reaction (0.413269 eV/atom)?
API value: I used the code at Plotting and analyzing a phase diagram using the materials api and modified it to change the Ca-C-O system to V-Fe-O. This is the result for mp-504509:
>>> print(df.loc[df['Materials ID'] == "mp-504509"]) Materials ID Composition Ehull Decomposition 156 mp-504509 VFeO4 0.414647 0.79 V16 Fe8 O52 + 0.21 Fe4 O6
The energy above the hull from the API agrees with the value on the web page for mp-504509 (0.415 eV/atom).
Manual calculation: According to the web page for triclinic VFeO4 (mp-504509), it decomposes to V4Fe2O13 (mp-558525) and Fe2O3 (mp-19770). I used the Materials API to retrieve the
formation_energy_per_atom property for each of these materials, then multiplied by the number of atoms to get the formation energy per formula unit:
- VFeO4 (mp-504509): -1.756109 * 6 = -10.536654
- V4Fe2O13 (mp-558525): -2.238331 * 19 = -42.528289
- Fe2O3 (mp-19770): -1.907358 * 5 = -9.536790
The balanced decomposition reaction is VFeO4 = 0.25 V4Fe2O13 + 0.25 Fe2O3. (The coefficients here represent mole numbers, not mass fractions.) This has a reaction energy ΔEdecomp = 0.25 EV4Fe2O13 + 0.25 EFe2O3 - EVFeO4 . This gives ΔEdecomp = -2.47961575 eV per formula unit. Dividing by 6 atoms in VFeO4, the result is -0.413269 eV/atom.
I verified with the API that mp-558525 and mp-19770 are predicted stable materials (they both have zero energy above the hull). As far as I understand, the energy of the decomposition reaction to form stable products is the opposite of the energy above the hull, i.e. Ehull = -ΔEdecomp = 0.413269 eV/atom. How can this value be reconciled with the API value for Ehull (0.414647 eV/atom)?