Dear all,

I am working on polynomial Matrix decomposition, 

so I need a fractional delay filter (probably, Windowed Sinc function ) 

to implement 3D (Row x Com. x order of the filter) broadband steering vector.

My problem is I wan to control the delay unit of the fractional delay FIR by myself (to be sin(theta))., and the obtained result to be 3D matrix (M x L x order of FIR)

  • function b= frac_delay_FIR(ntaps,u)
  •     if mod(u,1)== 0
  •         u= u+ eps;            % eps= 2.2e-16  prevent divide by zero, 
  •     end
  •     N= ntaps-1;  % order
  •     n= -N/2:N/2;  
  •     sinc= sin(pi*(n-u))./(pi*(n-u));    % truncated impulse response
  •     win= chebwin(ntaps,70);             % window function
  •     b= sinc.*win;                     % apply window function 

My Question is how can I make the result of this Fractional delay filter to be 3D, M x L x Order (Polynomial matrix),?

I highly appreciate your help and advices