Nonuniform fast Fourier transforms
·
401 commits
to master
since this release
The NUFFTs are implemented thanks to Alex Townsend:
nufft1
assumes uniform samples and noninteger frequencies;nufft2
assumes nonuniform samples and integer frequencies;nufft3 ( = nufft)
assumes nonuniform samples and noninteger frequencies;inufft1
inverts annufft1
; and,inufft2
inverts annufft2
.
Here is an example:
julia> using FastTransforms
julia> n = 10^4;
julia> c = complex(rand(n));
julia> ω = collect(0:n-1) + rand(n);
julia> nufft1(c, ω, eps());
julia> p1 = plan_nufft1(ω, eps());
julia> @time p1*c;
0.002383 seconds (6 allocations: 156.484 KiB)