diff --git a/src/Mod/Fem/femsolver/elmer/tasks.py b/src/Mod/Fem/femsolver/elmer/tasks.py index cca6ed22a8..cb2b12fe99 100644 --- a/src/Mod/Fem/femsolver/elmer/tasks.py +++ b/src/Mod/Fem/femsolver/elmer/tasks.py @@ -252,6 +252,7 @@ class Results(run.Results): self.fail() return self.solver.ElmerResult.read(postPath) + self.solver.ElmerResult.scale(1000) self.solver.ElmerResult.getLastPostObject().touch() self.solver.Document.recompute() diff --git a/src/Mod/Fem/femsolver/elmer/writer.py b/src/Mod/Fem/femsolver/elmer/writer.py index ee108268fa..ddc28f1590 100644 --- a/src/Mod/Fem/femsolver/elmer/writer.py +++ b/src/Mod/Fem/femsolver/elmer/writer.py @@ -311,12 +311,9 @@ class Writer(object): def _handleSimulation(self): self._simulation("Coordinate System", "Cartesian 3D") self._simulation("Coordinate Mapping", (1, 2, 3)) - # not necessary anymore since we use SI units - # if self.unit_schema == Units.Scheme.SI2: - # self._simulation("Coordinate Scaling", 0.001) - # Console.PrintMessage( - # "'Coordinate Scaling = Real 0.001' was inserted into the solver input file.\n" - # ) + # Elmer uses SI base units, but our mesh is in mm, therefore we must tell + # the solver that we have another scale + self._simulation("Coordinate Scaling", 0.001) self._simulation("Simulation Type", "Steady state") self._simulation("Steady State Max Iterations", 1) self._simulation("Output Intervals", 1)