calculate Heat Index
Calcula el índice de calor (Heat Index) si la temperatura ambiente es igual o superior a 27°C. Este umbral se basa en el punto donde el índice de calor comienza a ser significativo.
El cálculo utiliza la fórmula de regresión múltiple de Rothfusz, que es el estándar empleado por la NOAA (National Oceanic and Atmospheric Administration) de EE. UU. Esta fórmula toma la temperatura en Fahrenheit y la humedad relativa en porcentaje.
Pasos del cálculo:
Verifica si
ambientTemperatureestá disponible y es >=HEAT_INDEX_ACTIVATION_TEMP_CELSIUS(27.0°C).Si la condición se cumple, obtiene la humedad relativa actual del mes usando
HumidityDataManager.Convierte la temperatura ambiente de Celsius a Fahrenheit (
tempF).Calcula el índice de calor base en Fahrenheit (
heatIndexF) usandocalculateRothfuszHeatIndex(tempF, humidity).Aplica ajustes al
heatIndexFpara condiciones específicas de humedad y temperatura (por ejemplo, baja humedad y alta temperatura, o alta humedad y temperatura moderada-alta) usandoapplyHeatIndexAdjustments. Estos ajustes mejoran la precisión del índice en los extremos.Asegura que el índice de calor ajustado no sea menor que la temperatura ambiente actual en Fahrenheit.
Convierte el
heatIndexFfinal de nuevo a Celsius.Registra los valores de temperatura, humedad e índice de calor calculado.
Retorna el índice de calor en Celsius como Float.
Si la temperatura ambiente es inferior a 27°C o no está disponible, la función retorna null, indicando que el índice de calor no es aplicable o no se puede calcular.
Return
El índice de calor calculado en grados Celsius, o null si no es aplicable.