![]() |
NFFT 3.5.3alpha
|
Direct and fast computation of the discrete nonequispaced in time and frequency Fourier transform. More...
Data Structures | |
| struct | nnfft_plan |
| data structure for an NNFFT (nonequispaced in time and frequency fast Fourier transform) plan with double precision More... | |
Macros | |
| #define | MALLOC_V (1U<< 11) |
Functions | |
| void | nnfft_init (nnfft_plan *ths_plan, int d, int N_total, int M_total, int *N) |
| void | nnfft_init_guru (nnfft_plan *ths_plan, int d, int N_total, int M_total, int *N, int *N1, int m, unsigned nnfft_flags) |
| void | nnfft_trafo (nnfft_plan *ths_plan) |
| user routines | |
| void | nnfft_adjoint (nnfft_plan *ths_plan) |
| void | nnfft_precompute_lin_psi (nnfft_plan *ths_plan) |
| create a lookup table | |
| void | nnfft_precompute_psi (nnfft_plan *ths_plan) |
| void | nnfft_precompute_full_psi (nnfft_plan *ths_plan) |
| computes all entries of B explicitly | |
| void | nnfft_precompute_phi_hut (nnfft_plan *ths_plan) |
| initialisation of direct transform | |
| void | nnfft_finalize (nnfft_plan *ths_plan) |
Direct and fast computation of the discrete nonequispaced in time and frequency Fourier transform.
| #define MALLOC_V (1U<< 11) |
If this flag is set, (de)allocation of the frequency node vector is done.
Definition at line 423 of file nfft3.h.
Referenced by nnfft_finalize(), nnfft_init(), and reconstruct().
|
extern |
Creates a transform plan.



Definition at line 613 of file nnfft.c.
References nnfft_plan::d, FFT_OUT_OF_PLACE, FFTW_INIT, nnfft_plan::m, nnfft_plan::M_total, MALLOC_F, MALLOC_F_HAT, MALLOC_V, MALLOC_X, nnfft_plan::N, nnfft_plan::N1, nnfft_plan::N_total, nfft_malloc(), nnfft_plan::nnfft_flags, PRE_PHI_HUT, and PRE_PSI.
|
extern |
Creates a transform plan.




Definition at line 577 of file nnfft.c.
References nnfft_plan::d, FFT_OUT_OF_PLACE, FFTW_INIT, nnfft_plan::m, nnfft_plan::M_total, MALLOC_F_HAT, nnfft_plan::N, nnfft_plan::N1, nnfft_plan::N_total, nfft_malloc(), nnfft_plan::nnfft_flags, PRE_FULL_PSI, PRE_LIN_PSI, PRE_PHI_HUT, and PRE_PSI.
Referenced by reconstruct().
|
extern |
user routines
Executes a NNFFT, i.e. computes for 
![\[ f(x_j) = \sum_{k = 0}^{N_{total}-1} \hat{f}(v_k) {\rm e}^{-2 \pi
\mbox{\rm\scriptsize i} v_k x_j \odot N}
\]](form_176.png)
Definition at line 291 of file nnfft.c.
References nnfft_plan::d, nnfft_plan::direct_plan, nnfft_plan::f, nnfft_plan::M_total, nfft_trafo(), nnfft_plan::sigma, and nnfft_plan::x.
|
extern |
Executes a adjoint NNFFT, i.e. computes for 
![\[ \hat{f}(v_k) = \sum_{j = 0}^{M_{tota}l-1} f(x_j) {\rm e}^{2 \pi
\mbox{\rm\scriptsize i} v_k x_j \odot N}
\]](form_179.png)
Definition at line 319 of file nnfft.c.
References nnfft_plan::d, nnfft_plan::direct_plan, nnfft_plan::f, nnfft_plan::M_total, nfft_adjoint(), nnfft_plan::sigma, and nnfft_plan::x.
|
extern |
create a lookup table
Precomputation for a transform plan.
precomputes equally spaced values of the window function psi
if PRE_LIN_PSI is set the application program has to call this routine
Definition at line 367 of file nnfft.c.
References nnfft_plan::d, nnfft_plan::direct_plan, nnfft_plan::K, nnfft_plan::m, nnfft_plan::n, nnfft_plan::N1, nfft_precompute_lin_psi(), and nnfft_plan::psi.
Referenced by reconstruct().
|
extern |
Precomputation for a transform plan.
precomputes the values of the window function psi in a tensor product form
if PRE_PSI is set the application program has to call this routine after setting the nodes x
Definition at line 385 of file nnfft.c.
References nnfft_plan::d, nnfft_plan::direct_plan, nnfft_plan::m, nnfft_plan::M_total, nnfft_plan::n, nnfft_plan::N1, nnfft_plan::N_total, nfft_precompute_psi(), nnfft_plan::psi, nnfft_plan::sigma, nnfft_plan::v, and nnfft_plan::x.
Referenced by nnfft_precompute_full_psi(), and reconstruct().
|
extern |
computes all entries of B explicitly
Precomputation for a transform plan.
precomputes the values of the window function psi and their indices in non tensor product form
if PRE_FULL_PSI is set the application program has to call this routine after setting the nodes x
Definition at line 424 of file nnfft.c.
References nnfft_plan::d, nnfft_plan::direct_plan, nnfft_plan::m, nnfft_plan::M_total, nnfft_plan::N_total, nfft_precompute_full_psi(), nnfft_precompute_psi(), nnfft_plan::psi, nnfft_plan::psi_index_f, nnfft_plan::psi_index_g, nnfft_plan::sigma, and nnfft_plan::x.
Referenced by reconstruct().
|
extern |
initialisation of direct transform
Precomputation for a transform plan.
precomputes the values of the fourier transformed window function, i.e. phi_hut
if PRE_PHI_HUT is set the application program has to call this routine after setting the nodes v
Definition at line 347 of file nnfft.c.
References nnfft_plan::c_phi_inv, nnfft_plan::d, nnfft_plan::M_total, nnfft_plan::N, nnfft_plan::n, nfft_malloc(), and nnfft_plan::x.
Referenced by reconstruct().
|
extern |
Destroys a plan.
Definition at line 657 of file nnfft.c.
References nnfft_plan::aN1, nnfft_plan::c_phi_inv, nnfft_plan::direct_plan, nnfft_plan::f, nnfft_plan::f_hat, MALLOC_F, MALLOC_F_HAT, MALLOC_V, MALLOC_X, nnfft_plan::N, nnfft_plan::N1, nfft_finalize(), nfft_free(), nnfft_plan::nnfft_flags, PRE_FULL_PSI, PRE_LIN_PSI, PRE_PHI_HUT, PRE_PSI, nnfft_plan::psi, nnfft_plan::psi_index_f, nnfft_plan::psi_index_g, nnfft_plan::v, and nnfft_plan::x.
Referenced by reconstruct().