Nufftn yields only zeros for nonuniform grid. Bug?
1 view (last 30 days)
Show older comments
Following up a previous question from myself on this site, I decided to ask again about my second point more precisely.
My main issue is that in my test-case of a simple Gaussian the built-in MATLAB function 'nufftn' only gives a matrix of zeros as a result when using the nonuniform grid 'pcrop.mat', provided in the attachment.
in other words:
fcrop = exp(-(pcrop.^2 + pcrop'.^2 + pcrop.*pcrop'));
ftcrop = reshape(nufftn(fcrop,{pcrop,pcrop'},{pcrop,pcrop'})/2/pi,length(pcrop),length(pcrop));
yields 'ftcrop' as 2d matrix full of zeros.
Performing the same task with a interpolated uniform grid
puni=[pcrop(1):2*pcrop(end)/(length(pcrop)-1):pcrop(end)];
funi = exp(-(puni.^2 + puni'.^2 + puni.*puni'));
ftuni = reshape(nufftn(funi,{puni/sqrt(2*pi),puni/sqrt(2*pi)'},{puni/sqrt(2*pi),puni/sqrt(2*pi)'})/2/pi*(2*puni(end)/length(puni))^2,length(puni),length(puni));
gives the correct matrix 'ftuni'.
Is this a bug, or am I using the function in a wrong way? Unfortunately I dont get any error messages.
0 Comments
Accepted Answer
Chris Turnes
on 29 Apr 2020
Yes, this appears to be a bug. Please open a case with technical support.
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!