NFFT Logo 3.0 API Reference
Main Page | Modules | Data Structures | Directories | File List | Data Fields | Globals

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 1168 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 772 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 832 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 1501 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 1509 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 565 of file nsfft.c.

References nsfft_plan::act_nfft_plan, nsfft_plan::d, nfft_plan::f_hat, nsfft_plan::f_hat, nsfft_plan::index_sparse_to_full, nsfft_plan::M_total, nfft_plan::N_total, nsfft_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 683 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 1730 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 1831 of file nsfft.c.

References nsfft_plan::d.


Generated on 1 Nov 2006 by Doxygen 1.4.4