空气质量指数是通过计算各个污染物空气质量分指数得到的
计算每一个污染物的空气质量分指数在对所有的分指数取最大值就可得到:
其中IAQI_p为污染物项目p的空气质量分指数;Cp为污染物项目p的质量浓度值,BPhi为污染物浓度限高位值;BPlo为污染物浓度限低位值;IAQIhi为BPhi对应的空气质量分指数;IAQIlo为BPlo对应的空气质量分指数。
这些数值在表格中有相应对应的值
matlab代码如下:
function o = caliaqi(i)
%UNTITLED %%根据限度值和浓度值计算iaqi输入6种 污染物浓度,输出为6种污染物浓度的IAQI
i=abs(i);
%输入6中污染物浓度,矩阵格式为i:【1*6】,输出iaqi当天,矩阵格式o:【1*6】
a=[
0 5 10 35 60 90 120 150;%co
0 100 200 700 1200 2340 3090 3840;%no
0 160 200 300 400 800 1000 1200;%o3
0 50 150 250 350 420 500 600;%pm10
0 35 75 115 150 250 350 500;%pm,2.5
0 50 150 475 800 1600 2100 2620;%so2
0 50 100 150 200 300 400 500;%iaqi限度值];
];
% 此处显示详细说明a为限度表对应
for m=1:6%6种污染物浓度排序见上表
Hi=0;
Lo=0;
for n=1:8
if(i(m)>=a(m,n))
Hi=n+1;
Lo=n;
end
end %求上下限坐标
c(m)=((a(7,Hi)-a(7,Lo))/(a(m,Hi)-a(m,Lo)))*(i(m)-a(m,Lo))+a(7,Lo);%变量是i1,1
end
o=c;
end
得到的是一种空气质量分指数:
对1*6的矩阵取最大值就可以得到空气质量指数
IAQI= caliaqi(o);%将输出转化成IAQI
AQI_actual=max(caliaqi([Y1,Y2,Y3,Y4,Y5,Y6]))
AQI由此可以得出