FEM: solver tasks, use same result reading method name in all solver

This commit is contained in:
Bernd Hahnebach
2021-07-22 23:44:16 +02:00
parent a40812dfbf
commit 18c3ef6d46
2 changed files with 14 additions and 5 deletions

View File

@@ -106,7 +106,8 @@ class Solve(run.Solve):
[binary, "-i", _inputFileName],
cwd=self.directory,
stdout=subprocess.PIPE,
stderr=subprocess.PIPE)
stderr=subprocess.PIPE
)
self.signalAbort.add(self._process.terminate)
# output = self._observeSolver(self._process)
self._process.communicate()
@@ -127,16 +128,23 @@ class Results(run.Results):
"User parameter:BaseApp/Preferences/Mod/Fem/General")
if not prefs.GetBool("KeepResultsOnReRun", False):
self.purge_results()
self.load_results_ccxfrd()
self.load_results_ccxdat()
self.load_results()
def purge_results(self):
# dat file will not be removed
# results from other solvers will be removed too
# the user should decide if purge should only delete the solver results or all results
for m in membertools.get_member(self.analysis, "Fem::FemResultObject"):
if m.Mesh and femutils.is_of_type(m.Mesh, "Fem::MeshResult"):
self.analysis.Document.removeObject(m.Mesh.Name)
self.analysis.Document.removeObject(m.Name)
self.analysis.Document.recompute()
def load_results(self):
self.load_results_ccxfrd()
self.load_results_ccxdat()
def load_results_ccxfrd(self):
frd_result_file = os.path.join(
self.directory, _inputFileName + ".frd")

View File

@@ -112,7 +112,7 @@ class Results(run.Results):
"User parameter:BaseApp/Preferences/Mod/Fem/General")
if not prefs.GetBool("KeepResultsOnReRun", False):
self.purge_results()
self.load_results_z88o2()
self.load_results()
def purge_results(self):
for m in membertools.get_member(self.analysis, "Fem::FemResultObject"):
@@ -121,7 +121,8 @@ class Results(run.Results):
self.analysis.Document.removeObject(m.Name)
self.analysis.Document.recompute()
def load_results_z88o2(self):
def load_results(self):
# displacements from z88o2 file
disp_result_file = os.path.join(
self.directory, "z88o2.txt")
if os.path.isfile(disp_result_file):