The following code summarises the steps of Section 4.2 and computes a univariate NFFT from 14 Fourier coefficients and 19 nodes. Note that this routine is part of simple_test.c in examples/nfft/ and uses additional routines as defined include/util.h to set up and show vectors.
void simple_test_nfft_1d() { nfft_plan p; int N=14; int M=19; nfft_init_1d(&p,N,M); nfft_vrand_shifted_unit_double(p.x,p.M_total); if(p.nfft_flags & PRE_ONE_PSI) nfft_precompute_one_psi(&p); nfft_vrand_unit_complex(p.f_hat,p.N_total); nfft_vpr_complex(p.f_hat,p.N_total,"given Fourier coefficients, f_hat"); ndft_trafo(&p); nfft_vpr_complex(p.f,p.M_total,"ndft, f"); nfft_trafo(&p); nfft_vpr_complex(p.f,p.M_total,"nfft, f"); nfft_finalize(&p); }