FEM: make objects module, better name for ccx tools solver def

This commit is contained in:
Bernd Hahnebach
2017-12-13 08:34:29 +01:00
committed by wmayer
parent 5e2159cb74
commit 531ad99b69
3 changed files with 9 additions and 9 deletions

View File

@@ -384,8 +384,8 @@ def makeEquationHeat(doc, base_solver):
return obj
def makeSolverCalculixOld(doc, name="CalculiXccxTools"):
'''makeSolverCalculixOld(document, [name]): makes a Calculix solver object for the ccx tools module'''
def makeSolverCalculixCcxTools(doc, name="CalculiXccxTools"):
'''makeSolverCalculixCcxTools(document, [name]): makes a Calculix solver object for the ccx tools module'''
obj = doc.addObject("Fem::FemSolverObjectPython", name)
import PyObjects._FemSolverCalculix
PyObjects._FemSolverCalculix._FemSolverCalculix(obj)

View File

@@ -47,7 +47,7 @@ class _CommandFemAnalysis(CommandManager):
use_old_solver_frame_work = ccx_prefs.GetBool("useOldSolverFrameWork", False)
use_new_solver_frame_work = ccx_prefs.GetBool("useNewSolverFrameWork", True)
if use_old_solver_frame_work and not use_new_solver_frame_work:
FreeCADGui.doCommand("ObjectsFem.makeSolverCalculixOld(FreeCAD.ActiveDocument)")
FreeCADGui.doCommand("ObjectsFem.makeSolverCalculixCcxTools(FreeCAD.ActiveDocument)")
else:
FreeCADGui.doCommand("ObjectsFem.makeSolverCalculix(FreeCAD.ActiveDocument)")
FreeCADGui.doCommand("FemGui.getActiveAnalysis().addObject(FreeCAD.ActiveDocument.ActiveObject)")
@@ -565,12 +565,12 @@ class _CommandFemSolverCalculix(CommandManager):
FreeCADGui.addModule("ObjectsFem")
FreeCADGui.addModule("FemGui")
if has_nonlinear_material_obj:
FreeCADGui.doCommand("solver = ObjectsFem.makeSolverCalculixOld(FreeCAD.ActiveDocument)")
FreeCADGui.doCommand("solver = ObjectsFem.makeSolverCalculixCcxTools(FreeCAD.ActiveDocument)")
FreeCADGui.doCommand("solver.GeometricalNonlinearity = 'nonlinear'")
FreeCADGui.doCommand("solver.MaterialNonlinearity = 'nonlinear'")
FreeCADGui.doCommand("FemGui.getActiveAnalysis().addObject(solver)")
else:
FreeCADGui.doCommand("FemGui.getActiveAnalysis().addObject(ObjectsFem.makeSolverCalculixOld(FreeCAD.ActiveDocument))")
FreeCADGui.doCommand("FemGui.getActiveAnalysis().addObject(ObjectsFem.makeSolverCalculixCcxTools(FreeCAD.ActiveDocument))")
else:
FreeCAD.ActiveDocument.openTransaction("Create CalculiX solver object")
FreeCADGui.addModule("ObjectsFem")

View File

@@ -386,7 +386,7 @@ class FemTest(unittest.TestCase):
analysis.addObject(ObjectsFem.makeResultMechanical(doc))
analysis.addObject(ObjectsFem.makeSolverCalculixOld(doc))
analysis.addObject(ObjectsFem.makeSolverCalculixCcxTools(doc))
analysis.addObject(ObjectsFem.makeSolverCalculix(doc))
sol = analysis.addObject(ObjectsFem.makeSolverElmer(doc))[0]
analysis.addObject(ObjectsFem.makeSolverZ88(doc))
@@ -453,7 +453,7 @@ class FemCcxAnalysisTest(unittest.TestCase):
self.assertTrue(analysis, "FemTest of new analysis failed")
fcc_print('Checking FEM new solver...')
solver_object = ObjectsFem.makeSolverCalculixOld(self.active_doc, 'CalculiX')
solver_object = ObjectsFem.makeSolverCalculixCcxTools(self.active_doc, 'CalculiX')
solver_object.GeometricalNonlinearity = 'linear'
solver_object.ThermoMechSteadyState = False
solver_object.MatrixSolverType = 'default'
@@ -699,7 +699,7 @@ class FemCcxAnalysisTest(unittest.TestCase):
self.assertTrue(analysis, "FemTest of new analysis failed")
fcc_print('Checking FEM new solver...')
solver_object = ObjectsFem.makeSolverCalculixOld(self.active_doc, 'CalculiX')
solver_object = ObjectsFem.makeSolverCalculixCcxTools(self.active_doc, 'CalculiX')
solver_object.AnalysisType = 'thermomech'
solver_object.GeometricalNonlinearity = 'linear'
solver_object.ThermoMechSteadyState = True
@@ -854,7 +854,7 @@ class FemCcxAnalysisTest(unittest.TestCase):
self.assertTrue(analysis, "FemTest of new analysis failed")
fcc_print('Checking FEM new solver...')
solver_object = ObjectsFem.makeSolverCalculixOld(self.active_doc, 'CalculiX')
solver_object = ObjectsFem.makeSolverCalculixCcxTools(self.active_doc, 'CalculiX')
solver_object.AnalysisType = 'thermomech'
solver_object.GeometricalNonlinearity = 'linear'
solver_object.ThermoMechSteadyState = True