Hi, I am wondering if it is now possible to construct Pourbaix diagram with r2SCAN data on Materials Project. In that case, should I pass MaterialsProjectDFTMixingScheme() as solid_compat to MaterialsProjectAqueousCompatibility to process all the entries including GGA/GGA+U/R2SCAN?
Hi @johan28, does this existing forum thread help?
I will take a look. Thank you!
I obtained different formation energies by using two different ways for mixing GGA/GGA+U with R2SCAN data.
For the method 1, I pulled the entries by specifying thermo_types
as GGA_GGA+U_R2SCAN
entries = mpr.get_entries_in_chemsys(['Li','P','O'], additional_criteria= {"thermo_types": ["GGA_GGA+U_R2SCAN"]})
PD = PhaseDiagram(entries)
for entry in entries:
if 'mp-2452-R2SCAN' in entry.entry_id:
print(entry)
print(PD.get_form_energy_per_atom(entry))
And here is the result of method 1,
mp-2452-R2SCAN ComputedStructureEntry - P4 O10 (P2O5)
Energy (Uncorrected) = -125.6631 eV (-8.9759 eV/atom)
Correction = 0.0000 eV (0.0000 eV/atom)
Energy (Final) = -125.6631 eV (-8.9759 eV/atom)
Energy Adjustments:
None
Parameters:
potcar_spec = [{'titel': 'PAW_PBE P 06Sep2000', 'hash': '5ab50b5cfa5df59737514bf74ec05fc5'}, {'titel': 'PAW_PBE O 08Apr2002', 'hash': '9bb4b91e6c47f70fd2bce603bd5d6832'}]
is_hubbard = False
hubbards = {}
run_type = R2SCAN
Data:
oxide_type = oxide
aspherical = True
last_updated = 2021-03-13 07:49:34.195000
task_id = mp-2021663
material_id = mp-2452
oxidation_states = {'P': 5.0, 'O': -2.0}
run_type = R2SCAN
-2.1463094865646255
In the method 2, I pulled the GGA/GGA+U and R2SCAN data separately, and mixed them using MaterialsProjectDFTMixingScheme()
entries_GGA = mpr.get_entries_in_chemsys(['Li','P','O'])
entries_R2SCAN = mpr.get_entries_in_chemsys(['Li','P','O'], additional_criteria= {"thermo_types": ["R2SCAN"]})
entries = MaterialsProjectDFTMixingScheme().process_entries(PO_entries_GGA+PO_entries_R2SCAN, verbose=False )
PD = PhaseDiagram(entries)
for entry in entries:
if 'mp-2452-R2SCAN' in entry.entry_id:
print(entry)
print(PD.get_form_energy_per_atom(entry))
And here is the result of method 2,
mp-2452-R2SCAN ComputedStructureEntry - P4 O10 (P2O5)
Energy (Uncorrected) = -125.6631 eV (-8.9759 eV/atom)
Correction = 20.3863 eV (1.4562 eV/atom)
Energy (Final) = -105.2769 eV (-7.5198 eV/atom)
Energy Adjustments:
MP GGA(+U)/R2SCAN mixing adjustment: 20.3863 eV (1.4562 eV/atom)
Parameters:
potcar_spec = [{'titel': 'PAW_PBE P 06Sep2000', 'hash': '5ab50b5cfa5df59737514bf74ec05fc5'}, {'titel': 'PAW_PBE O 08Apr2002', 'hash': '9bb4b91e6c47f70fd2bce603bd5d6832'}]
is_hubbard = False
hubbards = {}
run_type = R2SCAN
Data:
oxide_type = oxide
aspherical = True
last_updated = 2021-03-13 07:49:34.195000
task_id = mp-2021663
material_id = mp-2452
oxidation_states = {'P': 5.0, 'O': -2.0}
run_type = R2SCAN
-2.435166281683673
It seems the first method gives the same formation energy as shown on the webpage (-2.146 eV/atom), while the mixing scheme (MP GGA(+U)/R2SCAN mixing adjustment) is only applied in the method 2.
Why would they give different results?
This difference is to the the changes made to the new mixing scheme which are summarized in the previous thread, as well as here: Phase Diagrams (PDs) - Materials Project Documentation
Essentially, the first bit of code is pulling entries with corrections computed within the “home” chemical system of the material, which cannot be used directly to construct the Li-P-O
phase diagram.The thermo data shown on the website for a given material is always computed within the home system PD (e.g. Si-O for SiO2).
– Jason
I see. Now I understand what it means to be ‘home’ chemical system. Thank you so much!