diff --git a/src/Mod/Fem/femsolver/calculix/writer.py b/src/Mod/Fem/femsolver/calculix/writer.py index 4b14a2aed1..c087586041 100644 --- a/src/Mod/Fem/femsolver/calculix/writer.py +++ b/src/Mod/Fem/femsolver/calculix/writer.py @@ -1304,18 +1304,20 @@ class FemInputWriterCcx(writerbase.FemInputWriter): f.write('S, E, PEEQ\n') else: f.write('S, E\n') - + # dat file - f.write('** outputs --> dat file\n') - f.write('** reaction forces for Constraint fixed\n') - # reaction forces for all Constraint fixed - # freecadweb.org/tracker/view.php?id=2934 - for femobj in self.fixed_objects: - # femobj --> dict, FreeCAD document object is femobj['Object'] - fix_obj_name = femobj['Object'].Name - f.write('*NODE PRINT, NSET={}, TOTALS=ONLY\n'.format(fix_obj_name)) - f.write('RF\n\n') - # TODO: add Constraint Displacement if nodes are restrained + # reaction forces: freecadweb.org/tracker/view.php?id=2934 + if self.fixed_objects: + f.write('** outputs --> dat file\n') + # reaction forces for all Constraint fixed + f.write('** reaction forces for Constraint fixed\n') + for femobj in self.fixed_objects: + # femobj --> dict, FreeCAD document object is femobj['Object'] + fix_obj_name = femobj['Object'].Name + f.write('*NODE PRINT, NSET={}, TOTALS=ONLY\n'.format(fix_obj_name)) + f.write('RF\n') + # TODO: add Constraint Displacement if nodes are restrained + f.write('\n') # there is no need to write all integration point results # as long as there is no reader for them diff --git a/src/Mod/Fem/femtest/testfiles/ccx/cube_static.inp b/src/Mod/Fem/femtest/testfiles/ccx/cube_static.inp index 627200ad7b..c66fed8eab 100644 --- a/src/Mod/Fem/femtest/testfiles/ccx/cube_static.inp +++ b/src/Mod/Fem/femtest/testfiles/ccx/cube_static.inp @@ -588,6 +588,11 @@ FemConstraintFixed,3 U *EL FILE S, E +** outputs --> dat file +** reaction forces for Constraint fixed +*NODE PRINT, NSET=FemConstraintFixed, TOTALS=ONLY +RF + *********************************************************** ** written by write_step_end function diff --git a/src/Mod/Fem/femtest/testfiles/ccx/multimat.inp b/src/Mod/Fem/femtest/testfiles/ccx/multimat.inp index 2ee08bd283..cd80542ab2 100644 --- a/src/Mod/Fem/femtest/testfiles/ccx/multimat.inp +++ b/src/Mod/Fem/femtest/testfiles/ccx/multimat.inp @@ -1280,6 +1280,11 @@ ConstraintFixed,3 U *EL FILE S, E +** outputs --> dat file +** reaction forces for Constraint fixed +*NODE PRINT, NSET=ConstraintFixed, TOTALS=ONLY +RF + *********************************************************** ** written by write_step_end function diff --git a/src/Mod/Fem/femtest/testfiles/ccx/spine_thermomech.inp b/src/Mod/Fem/femtest/testfiles/ccx/spine_thermomech.inp index 5cb9b15c21..210cadd779 100644 --- a/src/Mod/Fem/femtest/testfiles/ccx/spine_thermomech.inp +++ b/src/Mod/Fem/femtest/testfiles/ccx/spine_thermomech.inp @@ -197,6 +197,11 @@ FemConstraintTemperature,11,11,310.93 U, NT *EL FILE S, E +** outputs --> dat file +** reaction forces for Constraint fixed +*NODE PRINT, NSET=FemConstraintFixed, TOTALS=ONLY +RF + *********************************************************** ** written by write_step_end function