From 2edabee0fc08c7afd31ca2f2023f68adb424e5a3 Mon Sep 17 00:00:00 2001 From: Bernd Hahnebach Date: Mon, 27 Jan 2020 07:41:33 +0100 Subject: [PATCH] FEM: solver elmer, workaround for result reading --- src/Mod/Fem/femsolver/elmer/tasks.py | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/src/Mod/Fem/femsolver/elmer/tasks.py b/src/Mod/Fem/femsolver/elmer/tasks.py index 429bde9cc3..0f75d25e06 100644 --- a/src/Mod/Fem/femsolver/elmer/tasks.py +++ b/src/Mod/Fem/femsolver/elmer/tasks.py @@ -133,7 +133,7 @@ class Results(run.Results): def run(self): if self.solver.ElmerResult is None: self._createResults() - postPath = os.path.join(self.directory, "case0001.vtu") + postPath = self._getResultFile() self.solver.ElmerResult.read(postPath) self.solver.ElmerResult.getLastPostObject().touch() self.solver.Document.recompute() @@ -144,4 +144,20 @@ class Results(run.Results): self.solver.ElmerResult.Label = self.solver.Label + "Result" self.analysis.addObject(self.solver.ElmerResult) + def _getResultFile(self): + postPath = None + # elmer post file path changed with version x.x + # see https://forum.freecadweb.org/viewtopic.php?f=18&t=42732 + # workaround + possible_post_file_0 = os.path.join(self.directory, "case0001.vtu") + possible_post_file_t = os.path.join(self.directory, "case_t0001.vtu") + if os.path.isfile(possible_post_file_0): + postPath = possible_post_file_0 + elif os.path.isfile(possible_post_file_t): + postPath = possible_post_file_t + else: + self.report.error("Result file not found.") + self.fail() + return postPath + ## @}