From d768775703af7e99f887be218fa373779e07f28d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pavel=20Ondra=C4=8Dka?= <pavel.ondracka@gmail.com> Date: Wed, 28 Oct 2020 13:15:28 +0100 Subject: [PATCH] Save the last energy_total_scf_iteration as energy_total --- wien2kparser/parser_wien2k.py | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/wien2kparser/parser_wien2k.py b/wien2kparser/parser_wien2k.py index caf2ae8..85634c1 100644 --- a/wien2kparser/parser_wien2k.py +++ b/wien2kparser/parser_wien2k.py @@ -55,6 +55,7 @@ class Wien2kContext(object): self.secSystemIndex = None self.scfIterNr = 0 self.spinPol = None + self.eTot = None def startedParsing(self, path, parser): """called when parsing starts""" @@ -128,12 +129,16 @@ class Wien2kContext(object): def onClose_section_single_configuration_calculation(self, backend, gIndex, section): + # write number of SCF iterations backend.addValue('number_of_scf_iterations', self.scfIterNr) # write the references to section_method and section_system backend.addValue('single_configuration_to_calculation_method_ref', self.secMethodIndex) backend.addValue('single_configuration_calculation_to_system_ref', self.secSystemIndex) + if self.eTot is not None: + backend.addValue("energy_total", self.eTot) + mainFile = self.parser.fIn.fIn.name eigvalKpoint=[] @@ -281,6 +286,10 @@ class Wien2kContext(object): self.spinPol = False else: self.spinPol = True + + eTot = section["energy_total_scf_iteration"] + if eTot is not None: + self.eTot = eTot[0] # description of the input mainFileDescription = SM( -- GitLab