diff options
author | marwolaethblack <a.unal677@gmail.com> | 2017-11-30 12:34:56 +0100 |
---|---|---|
committer | marwolaethblack <a.unal677@gmail.com> | 2017-11-30 12:34:56 +0100 |
commit | 373010be532616b89f4c3e9fef0a972f7cf539f5 (patch) | |
tree | 168bab4a90f5e3c90434101bd4d482bb6eb0c129 /src/AppBundle/Utils | |
parent | f7e9434a00b9001d16a28f3aaab4d4b0696dc12c (diff) |
aqi
Diffstat (limited to 'src/AppBundle/Utils')
-rw-r--r-- | src/AppBundle/Utils/Aqi.php | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/src/AppBundle/Utils/Aqi.php b/src/AppBundle/Utils/Aqi.php new file mode 100644 index 0000000..6451c77 --- /dev/null +++ b/src/AppBundle/Utils/Aqi.php @@ -0,0 +1,43 @@ +<?php +/** + * Created by PhpStorm. + * User: andy + * Date: 11/30/17 + * Time: 11:27 AM + * + * + */ + +Namespace AppBundle\Utils; + +class Aqi { + public function calculateAQI($gasName, $concentration, $table) { + $bpLow = 1; + $bpHi = 2; + $bpLowIndex = 1; + $bpHiIndex = 1; + + $arr = $table ->{$gasName} ->{'breakpoints'}; + foreach ($arr as $index => $value) { + if ($value < $concentration && $table->{$gasName}->{'breakpoints'}[$index + 1] > $concentration) { + $bpLow = $value; + $bpLowIndex = $index; + } + + if ($value > $concentration && $table->{$gasName}->{'breakpoints'}[$index - 1] < $concentration) { + $bpHi = $value; + $bpHiIndex = $index; + } + + }; + + + + $airQualityIndex = (($table->{$gasName}->{'aq'}[$bpHiIndex] - $table->{$gasName}->{'aq'}[$bpLowIndex]) / ($bpHi - $bpLow)) * ($concentration - $bpLow) + $table->{$gasName}->{'aq'}[$bpLowIndex]; + + return $airQualityIndex; + + } +} + +?>
\ No newline at end of file |