loop becomes terminated after i=1 it is not continuing
Show older comments
for i=1:nb-1
% framing
fe1_buf= fe1(((i-1)*FR_LEN)+1:(i*FR_LEN));
fe2_buf = fe2(((i-1)*FR_LEN)+1:(i*FR_LEN));
ne_buf = ne(((i-1)*FR_LEN)+1:(i*FR_LEN));
% fe1_buf_1=[fe1_buf(((i-1)*(FR_LEN/2)+1:(i*(FR_LEN)/2))) fe1_buf((i*(FR_LEN/2)):i*(FR_LEN/2)+128)]';
% fe2_buf_1=[fe2_buf(((i-1)*(FR_LEN/2)+1:(i*(FR_LEN)/2))) fe2_buf((i*(FR_LEN/2))+1:i*(FR_LEN/2)+128)];
%
x1=fe1_buf'*w1';
x2=fe2_buf'*w1';
X1=(fft(x1,2*fl))';
X2=(fft(x2,2*fl))' ;
A=(1-z)*(abs(X1(i)))*(abs(X1(i)))+(1-z)*(abs(X2(i)))*(abs(X2(i)));
H1=fft(h1,2*fl);
H2=fft(h2,2*fl);
H1=(X1(i)*E1(i))/A;
H2=(X2(i)*E1(i))/A;
r1=ifft(H1,2*fl);
r2=ifft(H2,2*fl);
c1=r1(i)*[eye(fl) zeros(fl,fl);zeros(fl,fl) zeros(fl,fl)];
c2=r2(i)*[eye(fl) zeros(fl,fl);zeros(fl,fl) zeros(fl,fl)];
C1=fft(c1,2*fl);
C2=fft(c2,2*fl);
H1=H1+mu*H1;
H2=H2+mu*H2;
%
% for decrease of load X coefficients
p1=fft(refbuff1(i),2*fl);
p2=fft(refbuff2(i),2*fl);
temp2(i+1)=(p1(i+1)-p1(i)*1i);
temp3(i+1)=(p2(i+1)-p2(i)*1i);
%for y(n) in F.D multiply updated filter coefficients and add both
t1= p1*H1;
t2= p2*H2;
t=t1(i)+t2(i);
%y(n) in T.D
y=ifft(t,2*fl);
Y=y(i)*[zeros(fl,fl) eye(fl)*1i;zeros(fl,fl) eye(fl)];
%calculating error
err=ne_buf-(real(Y(i)));
%windowing and fft for err
E=err*w2';
E1=fft(E,2*fl);
err(i)=err(i+1)+err(i);
end
Accepted Answer
More Answers (0)
Categories
Find more on Digital Filter Design in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!