ГО СТ Р 56047— 2014
sn =
0
:
sd =
0
;
for (m = 0:Nc-1)
Fmem.P(1.m+1) = a(m+1) * Fmem.P(1.m+1} + b(m+1) * Ehs(1,m+1):
Fmem.P(2.m+1) = a(m+1) * Fmem.P(2,m+1) + b(m+1) * Ehs(2.m+1);
sn = sn + sqrt (Fmem.P(2.m+1) * Fmem.P(1.m+1));
sd = sd + Fmem.P(2,m+1);
end
CL = (sn / sdr2:
for (m = 0:Nc-1)
if (CL > 1)
EP(1.m+1) = Ehs(1.m+1) / CL:
EP(2.m+1) = Ehs(2,m+1);
else
EP(1.m+1) = Ehs(1,m+1):
EP(2.m+1) = Ehs(2,m+1) * CL;
end
Fmem.Rn(m+1) = a(m+1) * Fmem.Rn(m+1) + EP(2.m+1) * EP(1.m+1):
Fmem.Rd(m+1) = a(m+1) * Fmem.Rd(m+1) + EP(1,m+1) * EP(1.m+1): if
(Fmem.Rd(m+1) <= 0 | Fmem.Rn(m+1) <=
0)
error (•»> PQadap: Rd or Rn is zero’);
end
if (Fmem.Rn(m+1) >= Fmem.Rd(m+1))
R(1.m+1) = 1;
R(2.m+1) = Fmem.Rd(m-H)/ Fmem.Rn(m+1):
else
R(1,m+1) = Fmem.Rn(m+1)/ Fmem.Rd(m+1);
R(2,m+1) = 1;
end
end
for (m = 0:Nc-1)
iL = max(m-M1,0);
iU = min (m + М2. Nc-1);
s1 =0;
s2 =0:
for (i = iL:iU)
s1 = s1 + R(1.i+1);
s2 = s2 + R(2,i+1);
end
Fmem.PC(1.m+1) = a(m+1) * Fmem.PC(1.m+1) + b(m+1) * s1 / (iU-iL+1);
Fmem.PC(2,m+1) = a(m+1) * Fmem.PC(2.m+1) + b(m+1) * s2 / (iU-iL+1):
EP(1.m+1) = EP(1,m+1) * Fmem.PC(1.m+1);
EP(2,m+1) = EP(2,m+1) * Fmem.PC(2.m+1);
end
%
-----------------------
function (M1. М2] = PQ_M1M2 (Version. Model)
if (strcmp (Version. ’Basic’))
M1 = 3;
М2 = 4;
elseif (strcmp (Version. ’Advanced’))
if (strcmp (Model. ’FFT’))
M1 = 1;
М2 = 2;
else
M1 = 1;
М2 = 1;
end
end
48