//功能:煤气四等分分配功能
double* mqfp(BOOL rs1,BOOL rs2,BOOL rs3,int time1,int time2,int time3,double mq1,double mq2,double mq3)
{
double stageValue[4], rangeValue[3];
double Min, Max, stepSize;
int i;
//初始化和单烧
double ret[3]={130000,130000,130000};
//手动输入最大值、最小值、增量值
Max = 130000;
Min = 100000;
//计算各阶段增量步长值
stepSize = (Max - Min) / 3;
//计算各阶段数值
for (i = 0; i < 4; i++)
{
stageValue[i] = Min + stepSize * i;
}
/*
stageValue[0]=100000
stageValue[1]=110000
stageValue[2]=120000
stageValue[3]=130000
*/
rangeValue[0] = (stageValue[3] + stageValue[2])/2;//125000
rangeValue[1] = (stageValue[2] + stageValue[1])/2;//115000
rangeValue[2] = (stageValue[1] + stageValue[0])/2;//105000
//双烧1#,2#
if(rs1==1 && rs2==1 && rs3==0)
{
if(time1>time2)
{
if(mq1>=rangeValue[0])
{
ret[1]=stageValue[0];
}
else if(mq1<rangeValue[0] && mq1>=rangeValue[1])
{
ret[1]=stageValue[1];
}
else if(mq1<rangeValue[1] && mq1>=rangeValue[2])
{
ret[1]=stageValue[2];
}
else if(mq1<rangeValue[2])
{
ret[1]=stageValue[3];
}
}
else
{
if(mq2>=rangeValue[0])
{
ret[0]=stageValue[1];
}
else if(mq2<rangeValue[0] && mq2>=rangeValue[1])
{
ret[0]=stageValue[2];
}
else if(mq2<rangeValue[1] && mq2>=rangeValue[2])
{
ret[0]=stageValue[3];
}
else if(mq2<rangeValue[2])
{
ret[0]=stageValue[4];
}
}
}
//双烧1#,3#
else if(rs1==1 && rs2==0 && rs3==1)
{
if(time1>time3)
{
if(mq1>=rangeValue[0])
{
ret[2]=stageValue[1];
}
else if(mq1<rangeValue[0] && mq1>=rangeValue[1])
{
ret[2]=stageValue[2];
}
else if(mq1<rangeValue[1] && mq1>=rangeValue[2])
{
ret[2]=stageValue[3];
}
else if(mq1<rangeValue[2])
{
ret[2]=stageValue[4];
}
}
else
{
if(mq2>=rangeValue[0])
{
ret[0]=stageValue[1];
}
else if(mq2<rangeValue[0] && mq2>=rangeValue[1])
{
ret[0]=stageValue[2];
}
else if(mq2<rangeValue[1] && mq2>=rangeValue[2])
{
ret[0]=stageValue[3];
}
else if(mq2<rangeValue[2])
{
ret[0]=stageValue[4];
}
}
}
//双烧2#,3#
else if(rs1==0 && rs2==1 && rs3==1)
{
if(time2>time3)
{
if(mq1>=rangeValue[0])
{
ret[2]=stageValue[1];
}
else if(mq1<rangeValue[0] && mq1>=rangeValue[1])
{
ret[2]=stageValue[2];
}
else if(mq1<rangeValue[1] && mq1>=rangeValue[2])
{
ret[2]=stageValue[3];
}
else if(mq1<rangeValue[2])
{
ret[2]=stageValue[4];
}
}
else
{
if(mq2>=rangeValue[0])
{
ret[1]=stageValue[1];
}
else if(mq2<rangeValue[0] && mq2>=rangeValue[1])
{
ret[1]=stageValue[2];
}
else if(mq2<rangeValue[1] && mq2>=rangeValue[2])
{
ret[1]=stageValue[3];
}
else if(mq2<rangeValue[2])
{
ret[1]=stageValue[4];
}
}
}
return ret;
}
05-16
05-16
05-16
05-16
05-16
05-28
“相关推荐”对你有帮助么?
-
非常没帮助
-
没帮助
-
一般
-
有帮助
-
非常有帮助
提交