Es un sistema de control de la conversión de horario a utc:
i es la lluvia que marca la estación a las 0 UTC (si la estación va en civil y ha llovido después de las 0 civil será el valor que haya acumulado hasta entonces)
r es la lluvia en el momento de que la estación hace el reset. Si lo hace por ejemplo a las 23 UTC, 0 civil, será la lluvia acumulada hasta este momento
m es la cantidad acumulada máxima que marca la estación.
Con todo esto se calcula la lluvia real en horario UTC. Algo complejo con una serie de encadenamientos lógicos. Por ejemplo, si r > 1 entonces la lluvia en UTC sería:
m - (valor que muestra la estación) - i
Aquí la lógica:
if ($dailyRain < $plugesdiaries[$i] || $resetpluja > 0) {
if ($resetpluja < 0.1) {
$resetpluja = $plugesdiaries[$i] + $dailyRain;
if ($plujainicial <= $dailyRain) {
$plujadiaria = $dailyRain - $plujainicial;
} else {
$plujadiaria = $dailyRain;
}
} else { # hi ha hagut reset
$plujadiaria = sprintf("%.1f", ($maxpluja + $dailyRain - $plujainicial));
}
} else {
if ($dailyRain >= $plujainicial) {
$plujadiaria = sprintf("%.1f", ($dailyRain - $plujainicial));
} else {
$plujadiaria = sprintf("%.1f", $dailyRain);
}
}