Unable to shift discrete time Bessel Function

11 次查看(过去 30 天)
Hello,
I have been trying to make a Kaiser Window FIR Filter just for my own understanding. I get the Kaiser Window function in the time domain from 1:N where N is the total number of samples. However, when I try to center (shift) the window function about 0, I only get half the function. Here is my code -
%window x axis
n = floor(N/2);
nn = n;
n = -n:n;
%kaiser window code
Beta = 6;
K = Beta*sqrt(1 - ((2*n/N) - 1).^2); %define numerator term
%I_0(K) Bessel Function (numerator)
num = I_0(K,100);
%I_0(Beta) Bessel Function (denominator)
den = I_0(Beta,200);
w = num / den;
figure;
stem(n,w);
I would like something like this, which is centered around 0 -
I know there have been previous posts on shifting discrete time functions. However, none of these have helped me with this problem. I tried changing the index value of the matrix (the matrix which defines the x-coordinates essentially), but it still does not work.
Any help is appreciated. Thanks in advance!

回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Bessel functions 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by