28 lines
449 B
Mathematica
28 lines
449 B
Mathematica
|
function out = TailCorr(alpha,beta,iir_in,YStartState,sel_double)
|
||
|
|
||
|
len = length(iir_in);
|
||
|
N = length(alpha);
|
||
|
|
||
|
iir_inR1 = cat(1,0,iir_in(1:end-1,1));
|
||
|
|
||
|
diff = iir_in - iir_inR1;
|
||
|
|
||
|
Ystart = YStartState;
|
||
|
|
||
|
for i = 1:1:N
|
||
|
y(1:len,i) = MyIIR(alpha(i),beta(i),diff,Ystart,sel_double);
|
||
|
y = floor(y);
|
||
|
end
|
||
|
|
||
|
switch sel_double
|
||
|
|
||
|
case 0
|
||
|
y_sum = int64(sum(y,2));
|
||
|
|
||
|
case 1
|
||
|
y_sum = double(sum(y,2));
|
||
|
|
||
|
end
|
||
|
|
||
|
out = iir_in+y_sum;
|