Sensação térmica ou wind chill, em inglês, é a temperatura aparente sentida pela pele exposta, em virtude da combinação entre temperatura do ar e velocidade do vento.
Para calcular precisamos de dois dados a temperatura e a velocidade do vento.
Função em PHP:
function calSensacaoTermica($temperatura,$vel_vento){ $vel_vento = $vel_vento / 3.6; $sensação = 33 + (10 * sqrt($vel_vento) + 10.45 - $vel_vento) * ($temperatura - 33) / 22; return round($sensação); } #Exemplo echo calSensacaoTermica(28,15);
Calcular Índice de Calor
<?php function calIndCalor($temp, $umR){ $tempF = (($temp * 1.8) + 32); if ($umR > 100) { return ("A umidade relativa não pode ser superior a 100%."); exit; }else if ($umR < 0) { return ("A umidade relativa não pode ser menor do que 0%."); exit; }else if (floatval($tempF) <= 32) { $HI = $tempF; }else { $HI = 0.5 * ($tempF + 61.0 + (($tempF - 68.0) * 1.2) + ($umR * 0.094)); if ($HI > 79) { $HI = -42.379 + 2.04901523 * $tempF + 10.14333127 * $umR - 0.22475541 * $tempF * $umR - 0.00683783 * $tempF * $tempF - 0.05481717 * $umR * $umR + 0.00122874 * $tempF * $tempF * $umR + 0.00085282 * $tempF * $umR * $umR - 0.00000199 * $tempF * $tempF * $umR * $umR; if (($umR <= 13) && (($tempF >= 80) && $tempF <= 112)) { $HI -= ((13 - $umR) / 4) * sqrt((17 - abs($tempF - 95.)) / 17); } if (($umR > 85) && (($tempF >= 80) && $tempF <= 87)) { $HI += (($umR - 85) / 10) * ((87 - $tempF) / 5); } } } $resultado = ($HI - 32) / 1.8; return round($resultado); } # Exemplo echo calIndCalor('20','47') ?>
Fonte – https://ciram.epagri.sc.gov.br/index.php/indice-de-calor-e-sensacao-termica/
Comentários