Source code for mechmat.properties.thermal.conductivity
from mechmat.core.chainable import Chainable, Guarded
from mechmat.principal import core, thermal
from mechmat import ureg
[docs]class ThermalConductivity(Chainable):
def __init__(self, **kwargs):
super(ThermalConductivity, self).__init__(**kwargs)
self.set_guard('thermal_conductivity', ureg.W / (ureg.m * ureg.K))
self.link_attr('thermal_conductivity', core.reciprocal, value='thermal_conductivity')
self.set_guard('thermal_resistivity', ureg.m * ureg.K / ureg.W)
self.link_attr('thermal_resistivity', core.reciprocal, value='thermal_conductivity')
self.set_guard('thermal_conductance', ureg.W / ureg.K)
self.link_attr('thermal_conductance', core.reciprocal, value='thermal_resistance')
self.set_guard('thermal_resistance', ureg.K / ureg.W)
self.link_attr('thermal_resistance', core.reciprocal, value='thermal_conductance')
self.set_guard('heat_transfer_coeff', ureg.W / (ureg.K * ureg.m ** -2))
self.link_attr('heat_transfer_coeff', core.reciprocal, value='thermal_insulance')
self.set_guard('thermal_insulance', ureg.K * ureg.m ** 2 / ureg.W)
self.link_attr('thermal_insulance', core.reciprocal, value='heat_transfer_coeff')
self.set_guard('thermal_diffusivity', ureg.m ** 2 / ureg.s)
self.link_attr('thermal_diffusivity', thermal.thermal_diffusivity, thermal_conductivity='thermal_conductivity',
density='density', specific_heat_capacity='specific_heat_capacity')
self.set_guard('thermal_transmittance_convection', ureg.K * ureg.m ** 2 / ureg.W)
self.set_guard('thermal_transmittance_radiation', ureg.K * ureg.m ** 2 / ureg.W)
thermal_conductivity = Guarded()
thermal_resistivity = Guarded()
thermal_conductance = Guarded()
thermal_resistance = Guarded()
heat_transfer_coeff = Guarded()
thermal_insulance = Guarded()
thermal_diffusivity = Guarded()
thermal_transmittance_convection = Guarded()
thermal_transmittance_radiation = Guarded()