aiida_phonopy.parsers.phonopy#

Parsers of PhonopyCalculation output files.

Module Contents#

Classes#

PhonopyParser

Parser the files produced by a phonopy post processing calculation.

Functions#

file_opener(folder_path, filename)

Return a function to open different expected output format.

aiida_phonopy.parsers.phonopy.file_opener(folder_path: str, filename: str)[source]#

Return a function to open different expected output format.

class aiida_phonopy.parsers.phonopy.PhonopyParser(node: aiida.orm.CalcJobNode)[source]#

Bases: aiida_phonopy.parsers.base.Parser

Parser the files produced by a phonopy post processing calculation.

parse(**kwargs)[source]#

Parse retrieved files from remote folder.

parse_stdout() tuple[source]#

Parse the stdout output file.

Parameters:
  • parameters – the input parameters dictionary

  • parsed_phonopy – the collected parsed data from the yaml phonopy output

Returns:

raw parsed data

get_expected_filenames_keys() set[source]#

Return the retrieve file keys (that map to the filenames outputs) depending on the tags in parameters.

parse_force_constants(filepath: str) aiida.orm.ArrayData[source]#

Parse the force_constants.hdf5 output file.

load_with_numpy(file: str) numpy.ndarray[source]#

Load a txt file using numpy.

load_with_yaml(file: str) dict[source]#

Load a yaml file using.

parse_yaml(file: str) aiida.orm.Dict[source]#

Parse a .yaml file and return it as a Dict.

parse_total_dos(file: str) aiida.orm.XyData[source]#

Parse total_dos.dat output file.

parse_projected_dos(file: str) aiida.orm.XyData[source]#

Parse projected_dos.dat output file.

parse_thermal_properties(file: str) aiida.orm.XyData[source]#

Parse the thermal_properties.yaml` output file.

parse_band_structure(file: str, freqs_units: str = 'THz') aiida.orm.BandsData[source]#

Parse the band.hdf5` output file.

Expected keys are:
  • nqpoint: array with total number of q-points in the band structure, array(1,)

  • frequency: array of frequencies at each q-point; array(npath, segment_nqpoint, nband)

  • label: array of labels, two per each path; array(npath, 2)

  • path: number of q-points per path; array(npath, segment_nqpoint, qpoint/qposition(3,))

  • distance: distance between consecutive q-points in a segment of path; array(npath, segment_nqpoint)

  • segment_nqpoint: number of q-points per segment of the entire path; array(npath,)

  • eigenvector: (optional) eigenvector of each phonon mode, i.e. each frequency of each q-point;

    array(npath, segment_nqpoint, nband, eigenvector(6,))

  • group_velocity: (optional) group velocity of each phonon mode (as for eigenvector);

    array(npath, segment_nqpoint, nband, group_velocity(3,))

parse_qpoints(file: str, freqs_units: str = 'THz') aiida.orm.BandsData[source]#

Parse the mesh.hdf5` and qpoints.hdf5` output files.

Expected keys are:
  • frequency: array of frequencies at each q-point; array(nqpoint, nband)

  • mesh: qpoint mesh; array(3,)

  • qpoint: qpoints; array(nqpoint, 3)

  • weight: weight of qpoints; array(nqpoint,)

  • eigenvector: (optional) eigenvector of each phonon mode, i.e. each frequency of each q-point;

    array(npath, segment_nqpoint, nband, eigenvector(6,))

  • group_velocity: (optional) group velocity of each phonon mode (as for eigenvector);

    array(npath, segment_nqpoint, nband, group_velocity(3,))

_get_p2s_map()[source]#

Get the primitive to supercell map.