aiida_vasp.utils.sumo#
Module for plotting the AiiDA BandsData using sumo.
Module Contents#
Functions#
Get density of state by raeding directly from the vasprun.xml file |
|
Return a pymatgen BandStructureSymmLine object from BandsData |
|
Return a sumo SBSPlotter object |
|
Find the fermi energy, put it at the top of VBM NOTE: this differs from the fermi energy reported in VASP when there is any electronic smearing. |
|
Find the fermi energy, put it at the top of VBM NOTE: this differs from the fermi energy reported in VASP when there is any electronic smearing. |
|
Convert labels to laxtex style |
|
Obtain a pymatgen phonon bandstructure plotter |
|
Obtain a sumo phonon plotter object |
|
Extract fitting data for band extrema based on spin, kpoint and band. |
|
Get the fermi energy from a BandsData node |
API#
- aiida_vasp.utils.sumo.get_sumo_dos_plotter(scf_node, **kwargs)#
Get density of state by raeding directly from the vasprun.xml file
- Args:
scf_node (ProcessNode): A node with retrieved output attached. kwargs: additional parameters passed to load_dos function from sumo
- Returns:
A SDOSPlotter object to be used for plotting the density of states.
- aiida_vasp.utils.sumo.get_pmg_bandstructure(bands_node, structure=None, efermi=None, **kwargs)#
Return a pymatgen BandStructureSymmLine object from BandsData
- Arguments:
bands_node: A BandsData object structure (optional): a StructureData object, required if bands_node
does not have information about the cell.
efermi (float): Explicit value of the fermi energy.
- Returns:
A BandStructureSymmLine object
- aiida_vasp.utils.sumo.get_sumo_bands_plotter(bands, efermi=None, structure=None, **kwargs)#
Return a sumo SBSPlotter object
- Parameters:
bands_node – A BandsData object
(optional) (structure) – a StructureData object, required if bands_node does not have information about the cell. efermi (float): Explicit value of the fermi energy.
- Returns:
A SBSPlotter object
- aiida_vasp.utils.sumo.find_vbm(bands, occupations, tol=0.0001)#
Find the fermi energy, put it at the top of VBM NOTE: this differs from the fermi energy reported in VASP when there is any electronic smearing.
- aiida_vasp.utils.sumo.find_cbm(bands, occupations, tol=0.0001)#
Find the fermi energy, put it at the top of VBM NOTE: this differs from the fermi energy reported in VASP when there is any electronic smearing.
- aiida_vasp.utils.sumo.get_pymatgen_phonon_bands(band_structure: aiida.orm.BandsData, input_structure: aiida.orm.StructureData, has_nac=False) pymatgen.phonon.bandstructure.PhononBandStructureSymmLine#
Obtain a pymatgen phonon bandstructure plotter
- aiida_vasp.utils.sumo.get_sumo_phonon_plotter(band_structure: aiida.orm.BandsData, input_structure: aiida.orm.StructureData, has_nac=False, imag_tol=-0.05) sumo.plotting.phonon_bs_plotter.SPhononBSPlotter#
Obtain a sumo phonon plotter object
- aiida_vasp.utils.sumo.bandstats(bs: Union[pymatgen.electronic_structure.bandstructure.BandStructureSymmLine, aiida.orm.BandsData], num_sample_points: int = 3, temperature: Optional[float] = None, degeneracy_tol: float = 0.0001, parabolic: bool = True, structure: Optional[aiida.orm.StructureData] = None, efermi: Optional[float] = None, **kwargs)#
Extract fitting data for band extrema based on spin, kpoint and band.
NOTE: This function is modified based on sumo.cli.bandstats.band_stats
Searches forward and backward from the extrema point, but will only sample there data if there are enough points in that direction.
- aiida_vasp.utils.sumo.get_efermi_from_band(bands_node)#
Get the fermi energy from a BandsData node