diff options
| author | marcinzelent <zelent.marcin@gmail.com> | 2017-11-30 12:58:21 +0100 | 
|---|---|---|
| committer | marcinzelent <zelent.marcin@gmail.com> | 2017-11-30 12:58:21 +0100 | 
| commit | 4246f15d64d9ec460b3cb5acc2e838978bc2c91c (patch) | |
| tree | 1a7087c1870dff4dedd57b4e893a710785cebe32 /src/AppBundle/Utils/Aqi.php | |
| parent | 1a572a61f0bc6fe58a7270fca57a4b97066eeac2 (diff) | |
| parent | 1e5946aba89293d1a3103adb885bff4a69c6f769 (diff) | |
Merge remote-tracking branch 'origin/master'
# Conflicts:
#	.idea/workspace.xml
Diffstat (limited to 'src/AppBundle/Utils/Aqi.php')
| -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 |