From 33b859343859dd82df9f5c283bedb456d9464387 Mon Sep 17 00:00:00 2001 From: Bernd Hahnebach Date: Sun, 25 Sep 2016 19:36:15 +0100 Subject: [PATCH] FEM: change ccx solver property name from SteadyState to TheromMechSteadyState --- src/Mod/Fem/FemInputWriterCcx.py | 8 ++++---- src/Mod/Fem/TestFem.py | 4 ++-- src/Mod/Fem/_FemSolverCalculix.py | 4 ++-- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/src/Mod/Fem/FemInputWriterCcx.py b/src/Mod/Fem/FemInputWriterCcx.py index 8c6417a27..ee8867fba 100644 --- a/src/Mod/Fem/FemInputWriterCcx.py +++ b/src/Mod/Fem/FemInputWriterCcx.py @@ -299,7 +299,7 @@ class FemInputWriterCcx(FemInputWriter.FemInputWriter): f.write('** Materials\n') f.write('** written by {} function\n'.format(sys._getframe().f_code.co_name)) f.write('** Young\'s modulus unit is MPa = N/mm2\n') - if self.analysis_type == "frequency" or self.selfweight_objects or (self.analysis_type == "thermomech" and not self.solver_obj.SteadyState): + if self.analysis_type == "frequency" or self.selfweight_objects or (self.analysis_type == "thermomech" and not self.solver_obj.ThermoMechSteadyState): f.write('** Density\'s unit is t/mm^3\n') if self.analysis_type == "thermomech": f.write('** Thermal conductivity unit is kW/mm/K = t*mm/K*s^3\n') @@ -312,7 +312,7 @@ class FemInputWriterCcx(FemInputWriter.FemInputWriter): YM = FreeCAD.Units.Quantity(mat_obj.Material['YoungsModulus']) YM_in_MPa = float(YM.getValueAs('MPa')) PR = float(mat_obj.Material['PoissonRatio']) - if self.analysis_type == "frequency" or self.selfweight_objects or (self.analysis_type == "thermomech" and not self.solver_obj.SteadyState): + if self.analysis_type == "frequency" or self.selfweight_objects or (self.analysis_type == "thermomech" and not self.solver_obj.ThermoMechSteadyState): density = FreeCAD.Units.Quantity(mat_obj.Material['Density']) density_in_tonne_per_mm3 = float(density.getValueAs('t/mm^3')) if self.analysis_type == "thermomech": @@ -327,7 +327,7 @@ class FemInputWriterCcx(FemInputWriter.FemInputWriter): f.write('*MATERIAL, NAME=' + mat_name + '\n') f.write('*ELASTIC \n') f.write('{0:.0f}, {1:.3f}\n'.format(YM_in_MPa, PR)) - if self.analysis_type == "frequency" or self.selfweight_objects or (self.analysis_type == "thermomech" and not self.solver_obj.SteadyState): + if self.analysis_type == "frequency" or self.selfweight_objects or (self.analysis_type == "thermomech" and not self.solver_obj.ThermoMechSteadyState): f.write('*DENSITY \n') f.write('{0:.3e}, \n'.format(density_in_tonne_per_mm3)) if self.analysis_type == "thermomech": @@ -441,7 +441,7 @@ class FemInputWriterCcx(FemInputWriter.FemInputWriter): thermomech_analysis += ', SOLVER=ITERATIVE SCALING' elif self.solver_obj.MatrixSolverType == "iterativecholesky": thermomech_analysis += ', SOLVER=ITERATIVE CHOLESKY' - if self.solver_obj.SteadyState: + if self.solver_obj.ThermoMechSteadyState: thermomech_analysis += ', STEADY STATE' self.solver_obj.TimeInitialStep = 1.0 # Set time to 1 and ignore user inputs for steady state self.solver_obj.TimeEnd = 1.0 diff --git a/src/Mod/Fem/TestFem.py b/src/Mod/Fem/TestFem.py index 77ee20b96..d66b4c9c6 100644 --- a/src/Mod/Fem/TestFem.py +++ b/src/Mod/Fem/TestFem.py @@ -82,7 +82,7 @@ class FemTest(unittest.TestCase): def create_new_solver(self): self.solver_object = FemSolverCalculix.makeFemSolverCalculix('CalculiX') self.solver_object.GeometricalNonlinearity = 'linear' - self.solver_object.SteadyState = True + self.solver_object.ThermoMechSteadyState = False self.solver_object.MatrixSolverType = 'default' self.solver_object.IterationsControlParameterTimeUse = False self.solver_object.EigenmodesCount = 10 @@ -337,7 +337,7 @@ class TherMechFemTest(unittest.TestCase): def create_new_solver(self): self.solver_object = FemSolverCalculix.makeFemSolverCalculix('CalculiX') self.solver_object.GeometricalNonlinearity = 'linear' - self.solver_object.SteadyState = True + self.solver_object.ThermoMechSteadyState = True self.solver_object.MatrixSolverType = 'default' self.solver_object.IterationsMaximum = 2000 self.solver_object.IterationsControlParameterTimeUse = True diff --git a/src/Mod/Fem/_FemSolverCalculix.py b/src/Mod/Fem/_FemSolverCalculix.py index 6bcfe2970..cb5252a30 100644 --- a/src/Mod/Fem/_FemSolverCalculix.py +++ b/src/Mod/Fem/_FemSolverCalculix.py @@ -84,9 +84,9 @@ class _FemSolverCalculix(): eni = ccx_prefs.GetFloat("AnalysisTime", 1.0) obj.TimeEnd = eni - obj.addProperty("App::PropertyBool", "SteadyState", "Fem", "Run steady state or transient analysis") + obj.addProperty("App::PropertyBool", "ThermoMechSteadyState", "Fem", "Choose between steady state thermo mech or transient thermo mech analysis") sted = ccx_prefs.GetBool("StaticAnalysis", True) - obj.SteadyState = sted + obj.ThermoMechSteadyState = sted obj.addProperty("App::PropertyBool", "IterationsControlParameterTimeUse", "Fem", "Use the user defined time incrementation control parameter") use_non_ccx_iterations_param = ccx_prefs.GetInt("UseNonCcxIterationParam", False)