FEM: load stats, give error message if more than one results object in the analysis and no result object was geven

This commit is contained in:
Bernd Hahnebach
2017-07-21 06:21:40 +01:00
parent d37189fb60
commit 1a05e6755a
2 changed files with 22 additions and 20 deletions

View File

@@ -633,27 +633,27 @@ class FemTools(QtCore.QRunnable, QtCore.QObject):
# - MFlow - MassFlowRate
# - NPress - NetworkPressure
# - None - always return (0.0, 0.0, 0.0)
def get_stats(self, result_type):
def get_stats(self, result_type, results_name=None):
self.use_results(results_name)
m = self.result_object
stats = (0.0, 0.0, 0.0)
for m in self.analysis.Member:
if m.isDerivedFrom("Fem::FemResultObject"):
match_table = {
"U1": (m.Stats[0], m.Stats[1], m.Stats[2]),
"U2": (m.Stats[3], m.Stats[4], m.Stats[5]),
"U3": (m.Stats[6], m.Stats[7], m.Stats[8]),
"Uabs": (m.Stats[9], m.Stats[10], m.Stats[11]),
"Sabs": (m.Stats[12], m.Stats[13], m.Stats[14]),
"MaxPrin": (m.Stats[15], m.Stats[16], m.Stats[17]),
"MidPrin": (m.Stats[18], m.Stats[19], m.Stats[20]),
"MinPrin": (m.Stats[21], m.Stats[22], m.Stats[23]),
"MaxShear": (m.Stats[24], m.Stats[25], m.Stats[26]),
"Peeq": (m.Stats[27], m.Stats[28], m.Stats[29]),
"Temp": (m.Stats[30], m.Stats[31], m.Stats[32]),
"MFlow": (m.Stats[33], m.Stats[34], m.Stats[35]),
"NPress": (m.Stats[36], m.Stats[37], m.Stats[38]),
"None": (0.0, 0.0, 0.0)
}
stats = match_table[result_type]
match_table = {
"U1": (m.Stats[0], m.Stats[1], m.Stats[2]),
"U2": (m.Stats[3], m.Stats[4], m.Stats[5]),
"U3": (m.Stats[6], m.Stats[7], m.Stats[8]),
"Uabs": (m.Stats[9], m.Stats[10], m.Stats[11]),
"Sabs": (m.Stats[12], m.Stats[13], m.Stats[14]),
"MaxPrin": (m.Stats[15], m.Stats[16], m.Stats[17]),
"MidPrin": (m.Stats[18], m.Stats[19], m.Stats[20]),
"MinPrin": (m.Stats[21], m.Stats[22], m.Stats[23]),
"MaxShear": (m.Stats[24], m.Stats[25], m.Stats[26]),
"Peeq": (m.Stats[27], m.Stats[28], m.Stats[29]),
"Temp": (m.Stats[30], m.Stats[31], m.Stats[32]),
"MFlow": (m.Stats[33], m.Stats[34], m.Stats[35]),
"NPress": (m.Stats[36], m.Stats[37], m.Stats[38]),
"None": (0.0, 0.0, 0.0)
}
stats = match_table[result_type]
return stats

View File

@@ -297,6 +297,8 @@ class FemCcxAnalysisTest(unittest.TestCase):
self.active_doc.saveAs(static_save_fc_file)
# frequency
fcc_print('Reset Statik analysis')
fea.reset_all()
fcc_print('Setting analysis type to \'frequency\"')
fea.set_analysis_type("frequency")
self.assertTrue(True if fea.analysis_type == 'frequency' else False, "Setting anlysis type to \'frequency\' failed")