FEM: calculix writer, improve information about units in input file

This commit is contained in:
Bernd Hahnebach
2021-07-14 10:37:07 +02:00
parent 2bf2c7d546
commit def2df9253
27 changed files with 105 additions and 121 deletions

View File

@@ -32,8 +32,8 @@ import FreeCAD
def write_femelement_material(f, ccxwriter):
# floats read from ccx should use {:.13G}, see comment in writer module
# see unit comment in writer module
# helper inside class method
def is_density_needed():
if ccxwriter.analysis_type == "frequency":
return True
@@ -50,12 +50,7 @@ def write_femelement_material(f, ccxwriter):
f.write("\n{}\n".format(59 * "*"))
f.write("** Materials\n")
f.write("** Young\'s modulus unit is MPa = N/mm2\n")
if is_density_needed() is True:
f.write("** Density\'s unit is t/mm^3\n")
if ccxwriter.analysis_type == "thermomech":
f.write("** Thermal conductivity unit is kW/mm/K = t*mm/K*s^3\n")
f.write("** Specific Heat unit is kJ/t/K = mm^2/s^2/K\n")
f.write("** see information about units at file end\n")
for femobj in ccxwriter.material_objects:
# femobj --> dict, FreeCAD document object is femobj["Object"]
mat_obj = femobj["Object"]

View File

@@ -84,11 +84,11 @@ units_information = """*********************************************************
**
** This leads to:
** Force: N
** Pressure: N/mm^2
** Pressure: N/mm^2 == MPa (Young's Modulus has unit Pressure)
** Density: t/mm^3
** Gravity: mm/s^2
** Thermal conductivity: t*mm/K/s^3 (same as W/m/K)
** Specific Heat: mm^2/s^2/K (same as J/kg/K)
** Thermal conductivity: t*mm/K/s^3 == as W/m/K == kW/mm/K
** Specific Heat: mm^2/s^2/K = J/kg/K == kJ/t/K
"""

View File

@@ -430,8 +430,7 @@ Evolumes
***********************************************************
** Materials
** Young's modulus unit is MPa = N/mm2
** Density's unit is t/mm^3
** see information about units at file end
** FreeCAD material name: Steel-Generic
** MechanicalMaterial
*MATERIAL, NAME=MechanicalMaterial
@@ -486,9 +485,9 @@ S, E
**
** This leads to:
** Force: N
** Pressure: N/mm^2
** Pressure: N/mm^2 == MPa (Young's Modulus has unit Pressure)
** Density: t/mm^3
** Gravity: mm/s^2
** Thermal conductivity: t*mm/K/s^3 (same as W/m/K)
** Specific Heat: mm^2/s^2/K (same as J/kg/K)
** Thermal conductivity: t*mm/K/s^3 == as W/m/K == kW/mm/K
** Specific Heat: mm^2/s^2/K = J/kg/K == kJ/t/K
**

View File

@@ -476,7 +476,7 @@ Evolumes
***********************************************************
** Materials
** Young's modulus unit is MPa = N/mm2
** see information about units at file end
** FreeCAD material name: Steel-Generic
** MechanicalMaterial
*MATERIAL, NAME=MechanicalMaterial
@@ -613,9 +613,9 @@ RF
**
** This leads to:
** Force: N
** Pressure: N/mm^2
** Pressure: N/mm^2 == MPa (Young's Modulus has unit Pressure)
** Density: t/mm^3
** Gravity: mm/s^2
** Thermal conductivity: t*mm/K/s^3 (same as W/m/K)
** Specific Heat: mm^2/s^2/K (same as J/kg/K)
** Thermal conductivity: t*mm/K/s^3 == as W/m/K == kW/mm/K
** Specific Heat: mm^2/s^2/K = J/kg/K == kJ/t/K
**

View File

@@ -732,7 +732,7 @@ Evolumes
***********************************************************
** Materials
** Young's modulus unit is MPa = N/mm2
** see information about units at file end
** FreeCAD material name: CalculiX-Steel
** MechanicalMaterial
*MATERIAL, NAME=MechanicalMaterial
@@ -832,9 +832,9 @@ RF
**
** This leads to:
** Force: N
** Pressure: N/mm^2
** Pressure: N/mm^2 == MPa (Young's Modulus has unit Pressure)
** Density: t/mm^3
** Gravity: mm/s^2
** Thermal conductivity: t*mm/K/s^3 (same as W/m/K)
** Specific Heat: mm^2/s^2/K (same as J/kg/K)
** Thermal conductivity: t*mm/K/s^3 == as W/m/K == kW/mm/K
** Specific Heat: mm^2/s^2/K = J/kg/K == kJ/t/K
**

View File

@@ -346,7 +346,7 @@ Evolumes
***********************************************************
** Materials
** Young's modulus unit is MPa = N/mm2
** see information about units at file end
** FreeCAD material name: CalculiX-Steel
** FemMaterial
*MATERIAL, NAME=FemMaterial
@@ -433,9 +433,9 @@ RF
**
** This leads to:
** Force: N
** Pressure: N/mm^2
** Pressure: N/mm^2 == MPa (Young's Modulus has unit Pressure)
** Density: t/mm^3
** Gravity: mm/s^2
** Thermal conductivity: t*mm/K/s^3 (same as W/m/K)
** Specific Heat: mm^2/s^2/K (same as J/kg/K)
** Thermal conductivity: t*mm/K/s^3 == as W/m/K == kW/mm/K
** Specific Heat: mm^2/s^2/K = J/kg/K == kJ/t/K
**

View File

@@ -372,7 +372,7 @@ Evolumes
***********************************************************
** Materials
** Young's modulus unit is MPa = N/mm2
** see information about units at file end
** FreeCAD material name: CalculiX-Steel
** FemMaterial
*MATERIAL, NAME=FemMaterial
@@ -467,9 +467,9 @@ RF
**
** This leads to:
** Force: N
** Pressure: N/mm^2
** Pressure: N/mm^2 == MPa (Young's Modulus has unit Pressure)
** Density: t/mm^3
** Gravity: mm/s^2
** Thermal conductivity: t*mm/K/s^3 (same as W/m/K)
** Specific Heat: mm^2/s^2/K (same as J/kg/K)
** Thermal conductivity: t*mm/K/s^3 == as W/m/K == kW/mm/K
** Specific Heat: mm^2/s^2/K = J/kg/K == kJ/t/K
**

View File

@@ -346,7 +346,7 @@ Evolumes
***********************************************************
** Materials
** Young's modulus unit is MPa = N/mm2
** see information about units at file end
** FreeCAD material name: CalculiX-Steel
** FemMaterial
*MATERIAL, NAME=FemMaterial
@@ -430,9 +430,9 @@ RF
**
** This leads to:
** Force: N
** Pressure: N/mm^2
** Pressure: N/mm^2 == MPa (Young's Modulus has unit Pressure)
** Density: t/mm^3
** Gravity: mm/s^2
** Thermal conductivity: t*mm/K/s^3 (same as W/m/K)
** Specific Heat: mm^2/s^2/K (same as J/kg/K)
** Thermal conductivity: t*mm/K/s^3 == as W/m/K == kW/mm/K
** Specific Heat: mm^2/s^2/K = J/kg/K == kJ/t/K
**

View File

@@ -364,7 +364,7 @@ Evolumes
***********************************************************
** Materials
** Young's modulus unit is MPa = N/mm2
** see information about units at file end
** FreeCAD material name: CalculiX-Steel
** FemMaterial
*MATERIAL, NAME=FemMaterial
@@ -437,9 +437,9 @@ RF
**
** This leads to:
** Force: N
** Pressure: N/mm^2
** Pressure: N/mm^2 == MPa (Young's Modulus has unit Pressure)
** Density: t/mm^3
** Gravity: mm/s^2
** Thermal conductivity: t*mm/K/s^3 (same as W/m/K)
** Specific Heat: mm^2/s^2/K (same as J/kg/K)
** Thermal conductivity: t*mm/K/s^3 == as W/m/K == kW/mm/K
** Specific Heat: mm^2/s^2/K = J/kg/K == kJ/t/K
**

View File

@@ -18723,8 +18723,7 @@ Evolumes
***********************************************************
** Materials
** Young's modulus unit is MPa = N/mm2
** Density's unit is t/mm^3
** see information about units at file end
** FreeCAD material name: Steel_Scotty
** Steel_Scotty
*MATERIAL, NAME=Steel_Scotty
@@ -18807,9 +18806,9 @@ RF
**
** This leads to:
** Force: N
** Pressure: N/mm^2
** Pressure: N/mm^2 == MPa (Young's Modulus has unit Pressure)
** Density: t/mm^3
** Gravity: mm/s^2
** Thermal conductivity: t*mm/K/s^3 (same as W/m/K)
** Specific Heat: mm^2/s^2/K (same as J/kg/K)
** Thermal conductivity: t*mm/K/s^3 == as W/m/K == kW/mm/K
** Specific Heat: mm^2/s^2/K = J/kg/K == kJ/t/K
**

View File

@@ -38350,7 +38350,7 @@ Efaces
***********************************************************
** Materials
** Young's modulus unit is MPa = N/mm2
** see information about units at file end
** FreeCAD material name: AlCuMgPb
** MechanicalMaterial
*MATERIAL, NAME=MechanicalMaterial
@@ -38438,9 +38438,9 @@ RF
**
** This leads to:
** Force: N
** Pressure: N/mm^2
** Pressure: N/mm^2 == MPa (Young's Modulus has unit Pressure)
** Density: t/mm^3
** Gravity: mm/s^2
** Thermal conductivity: t*mm/K/s^3 (same as W/m/K)
** Specific Heat: mm^2/s^2/K (same as J/kg/K)
** Thermal conductivity: t*mm/K/s^3 == as W/m/K == kW/mm/K
** Specific Heat: mm^2/s^2/K = J/kg/K == kJ/t/K
**

View File

@@ -5037,7 +5037,7 @@ Evolumes
***********************************************************
** Materials
** Young's modulus unit is MPa = N/mm2
** see information about units at file end
** FreeCAD material name: Steel-Generic
** MechanicalMaterial
*MATERIAL, NAME=MechanicalMaterial
@@ -5370,9 +5370,9 @@ RF
**
** This leads to:
** Force: N
** Pressure: N/mm^2
** Pressure: N/mm^2 == MPa (Young's Modulus has unit Pressure)
** Density: t/mm^3
** Gravity: mm/s^2
** Thermal conductivity: t*mm/K/s^3 (same as W/m/K)
** Specific Heat: mm^2/s^2/K (same as J/kg/K)
** Thermal conductivity: t*mm/K/s^3 == as W/m/K == kW/mm/K
** Specific Heat: mm^2/s^2/K = J/kg/K == kJ/t/K
**

View File

@@ -3388,7 +3388,7 @@ Evolumes
***********************************************************
** Materials
** Young's modulus unit is MPa = N/mm2
** see information about units at file end
** FreeCAD material name: CalculiX-Steel
** Material
*MATERIAL, NAME=Material
@@ -3484,9 +3484,9 @@ RF
**
** This leads to:
** Force: N
** Pressure: N/mm^2
** Pressure: N/mm^2 == MPa (Young's Modulus has unit Pressure)
** Density: t/mm^3
** Gravity: mm/s^2
** Thermal conductivity: t*mm/K/s^3 (same as W/m/K)
** Specific Heat: mm^2/s^2/K (same as J/kg/K)
** Thermal conductivity: t*mm/K/s^3 == as W/m/K == kW/mm/K
** Specific Heat: mm^2/s^2/K = J/kg/K == kJ/t/K
**

View File

@@ -2138,8 +2138,7 @@ Evolumes
***********************************************************
** Materials
** Young's modulus unit is MPa = N/mm2
** Density's unit is t/mm^3
** see information about units at file end
** FreeCAD material name: CalculiX-Steel
** FemMaterial
*MATERIAL, NAME=FemMaterial
@@ -2214,9 +2213,9 @@ RF
**
** This leads to:
** Force: N
** Pressure: N/mm^2
** Pressure: N/mm^2 == MPa (Young's Modulus has unit Pressure)
** Density: t/mm^3
** Gravity: mm/s^2
** Thermal conductivity: t*mm/K/s^3 (same as W/m/K)
** Specific Heat: mm^2/s^2/K (same as J/kg/K)
** Thermal conductivity: t*mm/K/s^3 == as W/m/K == kW/mm/K
** Specific Heat: mm^2/s^2/K = J/kg/K == kJ/t/K
**

View File

@@ -18593,7 +18593,7 @@ Evolumes
***********************************************************
** Materials
** Young's modulus unit is MPa = N/mm2
** see information about units at file end
** FreeCAD material name: Calculix-Steel
** MechanicalMaterial
*MATERIAL, NAME=MechanicalMaterial
@@ -18676,9 +18676,9 @@ RF
**
** This leads to:
** Force: N
** Pressure: N/mm^2
** Pressure: N/mm^2 == MPa (Young's Modulus has unit Pressure)
** Density: t/mm^3
** Gravity: mm/s^2
** Thermal conductivity: t*mm/K/s^3 (same as W/m/K)
** Specific Heat: mm^2/s^2/K (same as J/kg/K)
** Thermal conductivity: t*mm/K/s^3 == as W/m/K == kW/mm/K
** Specific Heat: mm^2/s^2/K = J/kg/K == kJ/t/K
**

View File

@@ -3617,7 +3617,7 @@ Evolumes
***********************************************************
** Materials
** Young's modulus unit is MPa = N/mm2
** see information about units at file end
** FreeCAD material name: CalculiX-Steel
** FemMaterial
*MATERIAL, NAME=FemMaterial
@@ -3809,9 +3809,9 @@ S, E
**
** This leads to:
** Force: N
** Pressure: N/mm^2
** Pressure: N/mm^2 == MPa (Young's Modulus has unit Pressure)
** Density: t/mm^3
** Gravity: mm/s^2
** Thermal conductivity: t*mm/K/s^3 (same as W/m/K)
** Specific Heat: mm^2/s^2/K (same as J/kg/K)
** Thermal conductivity: t*mm/K/s^3 == as W/m/K == kW/mm/K
** Specific Heat: mm^2/s^2/K = J/kg/K == kJ/t/K
**

View File

@@ -10961,7 +10961,7 @@ Evolumes
***********************************************************
** Materials
** Young's modulus unit is MPa = N/mm2
** see information about units at file end
** FreeCAD material name: Calculix-Steel
** MechanicalMaterial
*MATERIAL, NAME=MechanicalMaterial
@@ -13187,9 +13187,9 @@ RF
**
** This leads to:
** Force: N
** Pressure: N/mm^2
** Pressure: N/mm^2 == MPa (Young's Modulus has unit Pressure)
** Density: t/mm^3
** Gravity: mm/s^2
** Thermal conductivity: t*mm/K/s^3 (same as W/m/K)
** Specific Heat: mm^2/s^2/K (same as J/kg/K)
** Thermal conductivity: t*mm/K/s^3 == as W/m/K == kW/mm/K
** Specific Heat: mm^2/s^2/K = J/kg/K == kJ/t/K
**

View File

@@ -17023,8 +17023,7 @@ Evolumes
***********************************************************
** Materials
** Young's modulus unit is MPa = N/mm2
** Density's unit is t/mm^3
** see information about units at file end
** FreeCAD material name: Steel-Generic
** MechanicalMaterial
*MATERIAL, NAME=MechanicalMaterial
@@ -17092,9 +17091,9 @@ S, E
**
** This leads to:
** Force: N
** Pressure: N/mm^2
** Pressure: N/mm^2 == MPa (Young's Modulus has unit Pressure)
** Density: t/mm^3
** Gravity: mm/s^2
** Thermal conductivity: t*mm/K/s^3 (same as W/m/K)
** Specific Heat: mm^2/s^2/K (same as J/kg/K)
** Thermal conductivity: t*mm/K/s^3 == as W/m/K == kW/mm/K
** Specific Heat: mm^2/s^2/K = J/kg/K == kJ/t/K
**

View File

@@ -27609,7 +27609,7 @@ Evolumes
***********************************************************
** Materials
** Young's modulus unit is MPa = N/mm2
** see information about units at file end
** FreeCAD material name: Concrete-Generic
** FemMaterial1
*MATERIAL, NAME=FemMaterial1
@@ -29214,9 +29214,9 @@ RF
**
** This leads to:
** Force: N
** Pressure: N/mm^2
** Pressure: N/mm^2 == MPa (Young's Modulus has unit Pressure)
** Density: t/mm^3
** Gravity: mm/s^2
** Thermal conductivity: t*mm/K/s^3 (same as W/m/K)
** Specific Heat: mm^2/s^2/K (same as J/kg/K)
** Thermal conductivity: t*mm/K/s^3 == as W/m/K == kW/mm/K
** Specific Heat: mm^2/s^2/K = J/kg/K == kJ/t/K
**

View File

@@ -2520,7 +2520,7 @@ Efaces
***********************************************************
** Materials
** Young's modulus unit is MPa = N/mm2
** see information about units at file end
** FreeCAD material name: Concrete-Generic
** FemMaterial1
*MATERIAL, NAME=FemMaterial1
@@ -2725,9 +2725,9 @@ RF
**
** This leads to:
** Force: N
** Pressure: N/mm^2
** Pressure: N/mm^2 == MPa (Young's Modulus has unit Pressure)
** Density: t/mm^3
** Gravity: mm/s^2
** Thermal conductivity: t*mm/K/s^3 (same as W/m/K)
** Specific Heat: mm^2/s^2/K (same as J/kg/K)
** Thermal conductivity: t*mm/K/s^3 == as W/m/K == kW/mm/K
** Specific Heat: mm^2/s^2/K = J/kg/K == kJ/t/K
**

View File

@@ -1212,7 +1212,7 @@ Evolumes
***********************************************************
** Materials
** Young's modulus unit is MPa = N/mm2
** see information about units at file end
** FreeCAD material name: Aluminium-Generic
** MechanicalMaterialLow
*MATERIAL, NAME=MechanicalMaterialLow
@@ -1306,9 +1306,9 @@ RF
**
** This leads to:
** Force: N
** Pressure: N/mm^2
** Pressure: N/mm^2 == MPa (Young's Modulus has unit Pressure)
** Density: t/mm^3
** Gravity: mm/s^2
** Thermal conductivity: t*mm/K/s^3 (same as W/m/K)
** Specific Heat: mm^2/s^2/K (same as J/kg/K)
** Thermal conductivity: t*mm/K/s^3 == as W/m/K == kW/mm/K
** Specific Heat: mm^2/s^2/K = J/kg/K == kJ/t/K
**

View File

@@ -19987,7 +19987,7 @@ Evolumes
***********************************************************
** Materials
** Young's modulus unit is MPa = N/mm2
** see information about units at file end
** FreeCAD material name: CalculiX-Steel
** Material_lin
*MATERIAL, NAME=Material_lin
@@ -20143,9 +20143,9 @@ RF
**
** This leads to:
** Force: N
** Pressure: N/mm^2
** Pressure: N/mm^2 == MPa (Young's Modulus has unit Pressure)
** Density: t/mm^3
** Gravity: mm/s^2
** Thermal conductivity: t*mm/K/s^3 (same as W/m/K)
** Specific Heat: mm^2/s^2/K (same as J/kg/K)
** Thermal conductivity: t*mm/K/s^3 == as W/m/K == kW/mm/K
** Specific Heat: mm^2/s^2/K = J/kg/K == kJ/t/K
**

View File

@@ -2546,7 +2546,7 @@ Efaces
***********************************************************
** Materials
** Young's modulus unit is MPa = N/mm2
** see information about units at file end
** FreeCAD material name: Steel-Generic
** FemMaterial
*MATERIAL, NAME=FemMaterial
@@ -2688,9 +2688,9 @@ RF
**
** This leads to:
** Force: N
** Pressure: N/mm^2
** Pressure: N/mm^2 == MPa (Young's Modulus has unit Pressure)
** Density: t/mm^3
** Gravity: mm/s^2
** Thermal conductivity: t*mm/K/s^3 (same as W/m/K)
** Specific Heat: mm^2/s^2/K (same as J/kg/K)
** Thermal conductivity: t*mm/K/s^3 == as W/m/K == kW/mm/K
** Specific Heat: mm^2/s^2/K = J/kg/K == kJ/t/K
**

View File

@@ -2546,7 +2546,7 @@ Efaces
***********************************************************
** Materials
** Young's modulus unit is MPa = N/mm2
** see information about units at file end
** FreeCAD material name: Steel-Generic
** FemMaterial
*MATERIAL, NAME=FemMaterial
@@ -2800,9 +2800,9 @@ RF
**
** This leads to:
** Force: N
** Pressure: N/mm^2
** Pressure: N/mm^2 == MPa (Young's Modulus has unit Pressure)
** Density: t/mm^3
** Gravity: mm/s^2
** Thermal conductivity: t*mm/K/s^3 (same as W/m/K)
** Specific Heat: mm^2/s^2/K (same as J/kg/K)
** Thermal conductivity: t*mm/K/s^3 == as W/m/K == kW/mm/K
** Specific Heat: mm^2/s^2/K = J/kg/K == kJ/t/K
**

View File

@@ -8175,9 +8175,7 @@ Evolumes
***********************************************************
** Materials
** Young's modulus unit is MPa = N/mm2
** Thermal conductivity unit is kW/mm/K = t*mm/K*s^3
** Specific Heat unit is kJ/t/K = mm^2/s^2/K
** see information about units at file end
** FreeCAD material name: Copper
** MaterialCopper
*MATERIAL, NAME=MaterialCopper
@@ -8274,9 +8272,9 @@ RF
**
** This leads to:
** Force: N
** Pressure: N/mm^2
** Pressure: N/mm^2 == MPa (Young's Modulus has unit Pressure)
** Density: t/mm^3
** Gravity: mm/s^2
** Thermal conductivity: t*mm/K/s^3 (same as W/m/K)
** Specific Heat: mm^2/s^2/K (same as J/kg/K)
** Thermal conductivity: t*mm/K/s^3 == as W/m/K == kW/mm/K
** Specific Heat: mm^2/s^2/K = J/kg/K == kJ/t/K
**

View File

@@ -84,10 +84,7 @@ Eedges
***********************************************************
** Materials
** Young's modulus unit is MPa = N/mm2
** Density's unit is t/mm^3
** Thermal conductivity unit is kW/mm/K = t*mm/K*s^3
** Specific Heat unit is kJ/t/K = mm^2/s^2/K
** see information about units at file end
** FreeCAD material name: Water
** FluidMaterial
*MATERIAL, NAME=FluidMaterial
@@ -185,9 +182,9 @@ MF, PS
**
** This leads to:
** Force: N
** Pressure: N/mm^2
** Pressure: N/mm^2 == MPa (Young's Modulus has unit Pressure)
** Density: t/mm^3
** Gravity: mm/s^2
** Thermal conductivity: t*mm/K/s^3 (same as W/m/K)
** Specific Heat: mm^2/s^2/K (same as J/kg/K)
** Thermal conductivity: t*mm/K/s^3 == as W/m/K == kW/mm/K
** Specific Heat: mm^2/s^2/K = J/kg/K == kJ/t/K
**

View File

@@ -106,9 +106,7 @@ Evolumes
***********************************************************
** Materials
** Young's modulus unit is MPa = N/mm2
** Thermal conductivity unit is kW/mm/K = t*mm/K*s^3
** Specific Heat unit is kJ/t/K = mm^2/s^2/K
** see information about units at file end
** FreeCAD material name: Steel-Generic
** MechanicalMaterial
*MATERIAL, NAME=MechanicalMaterial
@@ -221,9 +219,9 @@ RF
**
** This leads to:
** Force: N
** Pressure: N/mm^2
** Pressure: N/mm^2 == MPa (Young's Modulus has unit Pressure)
** Density: t/mm^3
** Gravity: mm/s^2
** Thermal conductivity: t*mm/K/s^3 (same as W/m/K)
** Specific Heat: mm^2/s^2/K (same as J/kg/K)
** Thermal conductivity: t*mm/K/s^3 == as W/m/K == kW/mm/K
** Specific Heat: mm^2/s^2/K = J/kg/K == kJ/t/K
**