From c008bc2d512b724c239cc0d84e64fd30b30f4c81 Mon Sep 17 00:00:00 2001 From: Mikkel Strange <mikst@fysik.dtu.dk> Date: Fri, 16 Sep 2016 14:52:20 +0200 Subject: [PATCH] band structure functionality added --- parser/parser-gpaw/parser2.py | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/parser/parser-gpaw/parser2.py b/parser/parser-gpaw/parser2.py index 21d8144..08c6aa7 100644 --- a/parser/parser-gpaw/parser2.py +++ b/parser/parser-gpaw/parser2.py @@ -137,7 +137,7 @@ def parse(filename): p.addRealValue('energy_reference_fermi', c(r.occupations.fermilevel, 'eV')) if hasattr(r.results, 'forces'): - p.addArrayValues('atom_forces_free', + p.addArrayValues('atom_forces_free_raw', c(r.results.forces, 'eV/angstrom')) if hasattr(r.results, 'magmoms'): p.addArrayValues('x_gpaw_magnetic_moments', @@ -154,6 +154,22 @@ def parse(filename): p.addArrayValues('eigenvalues_occupation', r.wave_functions.occupations) #p.addArrayValues('eigenvalues_kpoints', r.IBZKPoints) + if hasattr(r.wave_functions, 'band_paths'): # could change in GPAW + with o(p, 'section_k_band'): + for band_path in r.wave_functions.band_paths: + with o(p, 'section_k_band_segment'): + p.addArrayValues('band_energies', + c(band_path.eigenvalues, 'eV')) + p.addArrayValues('band_k_points', 'eV', + band_path.kpoints) + p.addArrayValues('band_segm_labels', + band_path.labels) + p.addArrayValues('band_segm_start_end', + np.asarray( + [band_path.kpoints[0], + band_path.kpoints[-1]]) + + p.finishedParsingSession("ParseSuccess", None) if __name__ == '__main__': -- GitLab