simple test for nufft not working
6 views (last 30 days)
Show older comments
I have a very simple test code for using the nufft function:
%% define signal
t = [-1.0/(2*pi),1.0/(2*pi)];
X = [1.0,1.0];
%% compute the NFFT
f_k = -10:10;
Y_k = nufft(X,t,f_k);
Accroding to the equation given in the documentation the result of this test should be
, but the result is just a real constant across
. How do I need to modify my program to deliver the correct result, or is this a bug?
0 Comments
Accepted Answer
Paul
on 27 Mar 2023
Edited: Paul
on 27 Mar 2023
Hi Pieter,
I don't think that expression for Y(k) is correct. We can check symbolically
%% define signal
t = sym([-1.0,1.0]);
X = [1.0/(2*sym(pi)),1.0/(2*sym(pi))];
%% compute the NFFT
%f_k = sym(-10:10);
%Y_k = nufft(X,t,f_k)
syms f_k
% expression of Y(k) from the doc page for nufft
Yk = sum(X.*exp(-1j*2*sym(pi)*t*f_k))
Yk = simplify(Yk)
Subbing back in the values of f_k from the original problem
cos(2*pi*(-10:10))/pi
nufft(double(X),double(t),-10:10)
0 Comments
More Answers (0)
See Also
Categories
Find more on Fourier Analysis and Filtering 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!
