diff --git a/src/Mod/Fem/Gui/Resources/ui/Material.ui b/src/Mod/Fem/Gui/Resources/ui/Material.ui index d47b5a97d8..7efe5269b8 100755 --- a/src/Mod/Fem/Gui/Resources/ui/Material.ui +++ b/src/Mod/Fem/Gui/Resources/ui/Material.ui @@ -183,7 +183,7 @@ 2.000000000000000 - 2000000000.000000000000000 + 99999999999.000000000000000 kg/m^3 @@ -252,7 +252,7 @@ 2.000000000000000 - 90000000000.000000000000000 + 99999999999.000000000000000 Pa @@ -362,7 +362,7 @@ 0.000001000000000 - 1000.000000000000000 + 99999999999.000000000000000 m^2/s @@ -431,7 +431,7 @@ 2.000000000000000 - 2000000000.000000000000000 + 99999999999.000000000000000 W/m/K @@ -478,7 +478,7 @@ 2.000000000000000 - 2000000000.000000000000000 + 99999999999.000000000000000 m/m/K @@ -525,7 +525,7 @@ 2.000000000000000 - 2050000000.000000000000000 + 99999999999.000000000000000 J/kg/K diff --git a/src/Mod/Fem/femsolver/calculix/write_femelement_material.py b/src/Mod/Fem/femsolver/calculix/write_femelement_material.py index 481ad5ce00..c289f8d62c 100644 --- a/src/Mod/Fem/femsolver/calculix/write_femelement_material.py +++ b/src/Mod/Fem/femsolver/calculix/write_femelement_material.py @@ -82,8 +82,9 @@ def write_femelement_material(f, ccxwriter): TEC = FreeCAD.Units.Quantity(mat_obj.Material["ThermalExpansionCoefficient"]) TEC_in_mmK = TEC.getValueAs("mm/mm/K").Value elif mat_obj.Category == "Fluid": - DV = FreeCAD.Units.Quantity(mat_obj.Material["DynamicViscosity"]) - DV_in_tmms = DV.getValueAs("t/mm/s").Value + KV = FreeCAD.Units.Quantity(mat_obj.Material["KinematicViscosity"]) + KV_in_mm2s = KV.getValueAs("mm^2/s").Value + DV_in_tmms = KV_in_mm2s * density_in_tonne_per_mm3 # write material properties f.write(f"** FreeCAD material name: {mat_info_name}\n") diff --git a/src/Mod/Fem/femtaskpanels/task_material_common.py b/src/Mod/Fem/femtaskpanels/task_material_common.py index 40944c1d63..d2c1afdc94 100644 --- a/src/Mod/Fem/femtaskpanels/task_material_common.py +++ b/src/Mod/Fem/femtaskpanels/task_material_common.py @@ -567,20 +567,18 @@ class _TaskPanel(base_femtaskpanel._BaseTaskPanel): old_value = Units.Quantity(self.material[matProperty]).Value # value = float(inputfield_text) # this fails on locale with comma # https://forum.freecad.org/viewtopic.php?f=18&t=56912&p=523313#p523313 - if value: - if not (1 - variation < float(old_value) / value < 1 + variation): - material = self.material - if qUnit != "": - material[matProperty] = str(value) + " " + qUnit - else: - material[matProperty] = str(value) - self.material = material - if self.has_transient_mat is False: - self.add_transient_material() - else: - self.set_transient_material() - else: - pass # some check or default value set can be done here + + if not (1 - variation < float(old_value) / value < 1 + variation): + material = self.material + if qUnit != "": + material[matProperty] = str(value) + " " + qUnit + else: + material[matProperty] = str(value) + self.material = material + if self.has_transient_mat is False: + self.add_transient_material() + else: + self.set_transient_material() # print(inputfield_text) # mechanical input fields