NFFT Logo 3.1.3 API Reference

NSFFT - Nonequispaced sparse FFT

Direct and fast computation of the nonequispaced FFT on the hyperbolic cross. More...

Data Structures

struct  nsfft_plan
 Structure for a NFFT plan. More...

Defines

#define NSDFT   (1U<< 12)
 If this flag is set, the member index_sparse_to_full is (de)allocated and initialised for the use in the routine nsdft_trafo and nsdft_adjoint.

Functions

void nsdft_trafo (nsfft_plan *ths)
 Executes an NSDFT, computes for $j=0,\hdots,M-1$:

\[ f_j = \sum_{k\in H_N^d}\hat f_k {\rm e}^{-2\pi{\rm\scriptsize i}k x_j} \]

.

void nsdft_adjoint (nsfft_plan *ths)
 Executes an adjoint NSFFT, computes for $k\in H_N^d$:

\[ \hat f_k = \sum_{j=0,\hdots,M-1} f_j {\rm e}^{+2\pi{\rm\scriptsize i}k x_j} \]

.

void nsfft_trafo (nsfft_plan *ths)
 Executes an NSFFT, computes fast and approximate for $j=0,\hdots,M-1$:

\[ f_j = \sum_{k\in H_N^d}\hat f_k {\rm e}^{-2\pi{\rm\scriptsize i}k x_j} \]

.

void nsfft_adjoint (nsfft_plan *ths)
 Executes an adjoint NSFFT, computes fast and approximate for $k\in H_N^d$:

\[ \hat f_k = \sum_{j=0,\hdots,M-1} f_j {\rm e}^{+2\pi{\rm\scriptsize i}k x_j} \]

.

void nsfft_cp (nsfft_plan *ths, nfft_plan *ths_nfft)
 Copy coefficients from nsfft plan to a nfft plan.
void nsfft_init_random_nodes_coeffs (nsfft_plan *ths)
 Initialisation of pseudo random nodes and coefficients.
void nsfft_init (nsfft_plan *ths, int d, int J, int M, int m, unsigned flags)
 Initialisation of a transform plan.
void nsfft_finalize (nsfft_plan *ths)
 Destroys a transform plan.

Detailed Description

Direct and fast computation of the nonequispaced FFT on the hyperbolic cross.


Define Documentation

#define NSDFT   (1U<< 12)

If this flag is set, the member index_sparse_to_full is (de)allocated and initialised for the use in the routine nsdft_trafo and nsdft_adjoint.

See also:
nsfft_init
Author:
Stefan Kunis

Definition at line 1245 of file nfft3.h.


Function Documentation

void nsdft_trafo ( nsfft_plan ths  ) 

Executes an NSDFT, computes for $j=0,\hdots,M-1$:

\[ f_j = \sum_{k\in H_N^d}\hat f_k {\rm e}^{-2\pi{\rm\scriptsize i}k x_j} \]

.

  • ths The pointer to a nsfft plan
Author:
Markus Fenn, Stefan Kunis

Definition at line 794 of file nsfft.c.

References nsfft_plan::d.

void nsdft_adjoint ( nsfft_plan ths  ) 

Executes an adjoint NSFFT, computes for $k\in H_N^d$:

\[ \hat f_k = \sum_{j=0,\hdots,M-1} f_j {\rm e}^{+2\pi{\rm\scriptsize i}k x_j} \]

.

  • ths The pointer to a nsfft plan
Author:
Stefan Kunis

Definition at line 854 of file nsfft.c.

References nsfft_plan::d.

void nsfft_trafo ( nsfft_plan ths  ) 

Executes an NSFFT, computes fast and approximate for $j=0,\hdots,M-1$:

\[ f_j = \sum_{k\in H_N^d}\hat f_k {\rm e}^{-2\pi{\rm\scriptsize i}k x_j} \]

.

  • ths The pointer to a nsfft plan
Author:
Markus Fenn, Stefan Kunis

Definition at line 1523 of file nsfft.c.

References nsfft_plan::d.

void nsfft_adjoint ( nsfft_plan ths  ) 

Executes an adjoint NSFFT, computes fast and approximate for $k\in H_N^d$:

\[ \hat f_k = \sum_{j=0,\hdots,M-1} f_j {\rm e}^{+2\pi{\rm\scriptsize i}k x_j} \]

.

  • ths The pointer to a nsfft plan
Author:
Stefan Kunis

Definition at line 1531 of file nsfft.c.

References nsfft_plan::d.

void nsfft_cp ( nsfft_plan ths,
nfft_plan ths_nfft 
)

Copy coefficients from nsfft plan to a nfft plan.

  • ths Pointers to a nsfft plan and to a nfft plan
Author:
Markus Fenn, Stefan Kunis

Definition at line 587 of file nsfft.c.

References nsfft_plan::act_nfft_plan, nsfft_plan::d, nsfft_plan::f_hat, nfft_plan::f_hat, nsfft_plan::index_sparse_to_full, nsfft_plan::M_total, nsfft_plan::N_total, nfft_plan::N_total, and nfft_plan::x.

void nsfft_init_random_nodes_coeffs ( nsfft_plan ths  ) 

Initialisation of pseudo random nodes and coefficients.

  • ths The pointer to a nsfft plan
Author:
Markus Fenn, Stefan Kunis

Definition at line 705 of file nsfft.c.

References nsfft_plan::act_nfft_plan, nsfft_plan::d, nsfft_plan::f_hat, nsfft_plan::M_total, nsfft_plan::N_total, nfft_vrand_shifted_unit_double(), nfft_vrand_unit_complex(), nfft_plan::x, nsfft_plan::x_021, nsfft_plan::x_102, nsfft_plan::x_120, nsfft_plan::x_201, and nsfft_plan::x_transposed.

void nsfft_init ( nsfft_plan ths,
int  d,
int  J,
int  M,
int  m,
unsigned  flags 
)

Initialisation of a transform plan.

  • ths The pointer to a nsfft plan
  • d The dimension
  • J The problem size
  • M The number of nodes
  • m nfft cut-off parameter
  • flags
Author:
Markus Fenn, Stefan Kunis

Definition at line 1756 of file nsfft.c.

void nsfft_finalize ( nsfft_plan ths  ) 

Destroys a transform plan.

  • ths The pointer to a nsfft plan
Author:
Markus Fenn, Stefan Kunis

Definition at line 1863 of file nsfft.c.

References nsfft_plan::d.


Generated on 23 Dec 2009 by Doxygen 1.5.6