在水处理领域中,需要对溶氧值控制水平进行评价,从而判定是否是精准曝气。DK1(设定值±0.1mg/L)、DK2(设定值±0.2mg/L)以及准确率ACC都是重要指标。而R则是学习系数。
function [ACC,R,DK1,DK2,MES]= ZHUNQUE(YUCE,SHIJI)%预测 ACC为准确率,R为学习系数,DK1为±0.1mg/L,DK2为±0.2mg/L
%求准确率的办法
% 此处显示详细说明
ERR1=YUCE-SHIJI; %做差
ERR=abs(ERR1); %绝对值
N1=size(YUCE); %自动获取多少行
N=N1(:,1:1); %提取出多少行,确定均值
S1=sum(ERR)/N; %分子上和
S2=sum(YUCE)/N; %分子下和
ACC=1-S1/S2; %准确率
R=sum(SHIJI)/sum(YUCE);%自学习系数,实际的值/预测的值
plot(ERR1);%画出偏差曲线
title('偏差曲线');%
xlabel('时间序列');
ylabel('溶氧值');
DK12=(ERR1>=-0.1)&(ERR1<=0.1);
N12=sum(DK12); %通过求和确定多少个数满足条件
DK1=N12/N;%计算DK1
DK22=(ERR1>=-0.2)&(ERR1<=0.2);
N22=sum(DK22); %通过求和确定多少数满足条件
DK2=N22/N;%计算DK2
% [D,DD]=ZHUNQUE(YUCE3,C6IN)
%输出结果 行的形式展示
MES(1,:)=sprintf('准确率是_%4.3f',ACC);
MES(2,:)=sprintf('学习系数_%4.3f',R);
MES(3,:)=sprintf('DK1是_%4.3f',DK1);
MES(4,:)=sprintf('DK2是_%4.3f',DK2);
%MES=sprintf('准确率是_%4.3f','DK1值是_%4.3f',ACC,DK1);
end
调用函数指令
[ACC,R,DK1,DK2,MES]= ZHUNQUE(ynn,output_test);
MES为信息记录。