mpinterfaces.mat2d.pourbaix package

Submodules

mpinterfaces.mat2d.pourbaix.analysis module

Create pourbaix diagrams for 2D materials against their ions in solution using the scheme outlined in PHYSICAL REVIEW B 85, 235438 (2012)

mpinterfaces.mat2d.pourbaix.analysis.contains_entry(entry_list, entry)[source]

Function for filtering duplicate entries in a list.

Parameters:
  • entry_list (list) – List of Pymatgen ComputedEntry objects.
  • entry (ComputedEntry) – the Pymatgen ComputedEntry object of interest.
Returns:

bool

mpinterfaces.mat2d.pourbaix.analysis.plot_pourbaix_diagram(metastability=0.0, ion_concentration=1e-06, fmt='pdf')[source]

Creates a Pourbaix diagram for the material in the cwd.

Parameters:
  • metastability (float) – desired metastable tolerance energy (meV/atom). <~50 is generally a sensible range to use.
  • ion_concentration (float) – in mol/kg. Sensible values are generally between 1e-8 and 1.
  • fmt (str) – matplotlib format style. Check the matplotlib docs for options.

mpinterfaces.mat2d.pourbaix.startup module

mpinterfaces.mat2d.pourbaix.startup.get_corrections(write_yaml=False)[source]

Calculates and collects the corrections to be added for each reference element directory in the current working directory.

Parameters:write_yaml (bool) – whether or not to write the corrections to ion_corrections.yaml and the mu0 values to end_members.yaml.
Returns:
elements as keys and their corrections as values,
in eV per atom, e.g. {‘Mo’: 0.135, ‘S’: -0.664}.
Return type:dict
mpinterfaces.mat2d.pourbaix.startup.get_experimental_formation_energies()[source]

Read in the raw enthalpy and entropy energy data from Kubaschewski in experimental_oxide_data.yaml and interpret it into actual formation energies. This extra step is written out mostly just to make the methodology clear and reproducible.

Returns:

mpinterfaces.mat2d.pourbaix.startup.relax_references(potcar_types, incar_dict, submit=True, force_overwrite=False)[source]

Set up calculation directories to calibrate the ion corrections to match a specified framework of INCAR parameters and potcar hashes.

Parameters:
  • potcar_types (list) – list of all elements to calibrate, containing specifications for the kind of potential desired for each element, e.g. [‘Na_pv’, ‘O’]. If oxygen is not explicitly included in the list, ‘O’ is used.
  • incar_dict (dict) – a dictionary of input parameters and their values, e.g. {‘ISMEAR’: -5, ‘NSW’: 10}
  • submit (bool) – whether or not to submit each job after preparing it.
  • force_overwrite (bool) – Whether or not to overwrite files if an already converged vasprun.xml exists in the directory.

Module contents