commit 921c68c6e1a4fd79279733b0830e2d615ba6928f
parent 57e8323bae3a1bfb4bbd78ed0fccaccdf92d2080
Author: Kninteman <[email protected]>
Date: Tue, 4 Apr 2023 12:54:54 +0200
Update datavalidator.php
Diffstat:
1 file changed, 12 insertions(+), 12 deletions(-)
diff --git a/datavalidator.php b/datavalidator.php
@@ -5,42 +5,42 @@
* Validates the temperature against the average of the last 30 rows for the given station name.
*
* @param string $station The station name to validate against.
- * @param float $temperatuur The temperature value to validate.
+ * @param float $temperature The temperature value to validate.
* @param Redis $redis The Redis connection object.
* @return float Returns the correct temperature.
*/
-function validate_temperature($station, $temperatuur, $redis) {
+function validate_temperature($station, $temperature, $redis) {
// Return the correct temperature validated with last 30 values.
//Deze checkt of het de eerste value is en maakt 2 queues aan en knalt de waardes erin.
if(!$redis->exists('values'.$station)) {
- $redis->lpush('values'.$station, $temperatuur);
- $redis->lpush('average'.$station, $temperatuur);
+ $redis->lpush('values'.$station, $temperature);
+ $redis->lpush('average'.$station, $temperature);
return 0;
}
//Als het aantal values de 30 nog niet bereikt heeft, berekend hij gewoon het gemiddelde en voegt de value toe aan de queue
else {
if($redis->llen('values'.$station) < 3) {
- $avg = ($redis->rpop('average'.$station) * $redis->llen('values'.$station) + $temperatuur) / ($redis->llen('values'.$station) + 1);
+ $avg = ($redis->rpop('average'.$station) * $redis->llen('values'.$station) + $temperature) / ($redis->llen('values'.$station) + 1);
$redis->lpush('average'.$station, $avg);
- $redis->lpush('values'.$station, $temperatuur);
+ $redis->lpush('values'.$station, $temperature);
return 0;
}
//Bij 30 values zal de volgende value eerst gecheckt worden met het bekende gemiddelde en eventueel aangepast worden.
//Daarna zal deze toegevoegd worden aan de value en average queue. De laatste waarde zal eruit gehaald worden.
else {
$current_avg = $redis->lIndex('average'.$station, 0);
- if(abs(($temperatuur - $current_avg) / $current_avg) > 0.2) {
- $temperatuur = $current_avg;
- $new_avg = (($redis->rpop('average'.$station) * 3) - $redis->rpop('values'.$station) + $temperatuur) / 3;
+ if(abs(($temperature - $current_avg) / $current_avg) > 0.2) {
+ $temperature = $current_avg;
+ $new_avg = (($redis->rpop('average'.$station) * 3) - $redis->rpop('values'.$station) + $temperature) / 3;
$redis->lpush('average'.$station, $new_avg);
- $redis->lpush('values'.$station, $temperatuur);
+ $redis->lpush('values'.$station, $temperature);
return -1;
}
else {
- $new_avg = (($redis->rpop('average'.$station) * 3) - $redis->rpop('values'.$station) + $temperatuur) / 3;
+ $new_avg = (($redis->rpop('average'.$station) * 3) - $redis->rpop('values'.$station) + $temperature) / 3;
$redis->lpush('average'.$station, $new_avg);
- $redis->lpush('values'.$station, $temperatuur);
+ $redis->lpush('values'.$station, $temperature);
return 1;
}
}