Source code for ladybug.datatype.temperature

# coding=utf-8
"""Temperature data type."""
from __future__ import division

from .base import DataTypeBase


[docs] class Temperature(DataTypeBase): """Temperature """ _units = ('C', 'F', 'K') _si_units = ('C', 'K') _ip_units = ('F',) _min = -273.15 _abbreviation = 'T' def _C_to_F(self, value): return value * 9. / 5. + 32. def _C_to_K(self, value): return value + 273.15 def _F_to_C(self, value): return (value - 32.) * 5. / 9. def _K_to_C(self, value): return value - 273.15
[docs] def to_unit(self, values, unit, from_unit): """Return values converted to the unit given the input from_unit.""" return self._to_unit_base('C', values, unit, from_unit)
[docs] def to_ip(self, values, from_unit): """Return values in IP and the units to which the values have been converted.""" if from_unit == 'F': return values, from_unit else: return self.to_unit(values, 'F', from_unit), 'F'
[docs] def to_si(self, values, from_unit): """Return values in SI and the units to which the values have been converted.""" if from_unit == 'C' or from_unit == 'K': return values, from_unit else: return self.to_unit(values, 'C', from_unit), 'C'
[docs] class DryBulbTemperature(Temperature): _abbreviation = 'DBT'
[docs] class DewPointTemperature(Temperature): _abbreviation = 'DPT'
[docs] class WetBulbTemperature(Temperature): _abbreviation = 'WBT'
[docs] class SkyTemperature(Temperature): _abbreviation = 'Tsky'
[docs] class GroundTemperature(Temperature): _abbreviation = 'Tground'
[docs] class AirTemperature(Temperature): _abbreviation = 'Tair'
[docs] class RadiantTemperature(Temperature): _abbreviation = 'Trad'
[docs] class OperativeTemperature(Temperature): _abbreviation = 'To'
[docs] class MeanRadiantTemperature(Temperature): _abbreviation = 'MRT'
[docs] class WetBulbGlobeTemperature(Temperature): _abbreviation = 'WBGT'
[docs] class WindChillTemperature(Temperature): _abbreviation = 'WCT'
[docs] class HeatIndexTemperature(Temperature): _abbreviation = 'HIT'
[docs] class StandardEffectiveTemperature(Temperature): _abbreviation = 'SET'
[docs] class UniversalThermalClimateIndex(Temperature): _abbreviation = 'UTCI'
[docs] class PhysiologicalEquivalentTemperature(Temperature): _abbreviation = 'PET'
[docs] class CoreBodyTemperature(Temperature): _abbreviation = 'Tcore'
[docs] class SkinTemperature(Temperature): _abbreviation = 'Tskin'
[docs] class ClothingTemperature(Temperature): _abbreviation = 'Tclo'
[docs] class PrevailingOutdoorTemperature(Temperature): _abbreviation = 'Tprevail'
[docs] class NeutralTemperature(Temperature): _abbreviation = 'Tn'