Cyclops Tensor Framework
parallel arithmetic on multidimensional arrays

FFT iterative method using gemv and spmv. More...

Collaboration diagram for fft:

Namespaces

 CTF_int
 

Functions

std::complex< double > omega (int i, int n)
 
Matrix< std::complex< double > > DFT_matrix (int n, World &wrld)
 
Matrix< std::complex< double > > twiddle_matrix (int n, World &wrld)
 
void fft (Vector< std::complex< double > > &v, int n)
 
int fft (int n, World &dw)
 
char * getCmdOption (char **begin, char **end, const std::string &option)
 
int main (int argc, char **argv)
 

Detailed Description

FFT iterative method using gemv and spmv.

Function Documentation

Matrix< std::complex<double> > DFT_matrix ( int  n,
World wrld 
)

Definition at line 23 of file fft.cxx.

References CTF::Tensor< dtype >::get_local_data(), ctf.core::np(), NS, omega(), and CTF::Tensor< dtype >::write().

Referenced by fft().

void fft ( Vector< std::complex< double > > &  v,
int  n 
)
int fft ( int  n,
World dw 
)

Definition at line 148 of file fft.cxx.

References ctf.core::a, DFT_matrix(), fft(), and CTF::World::rank.

char* getCmdOption ( char **  begin,
char **  end,
const std::string &  option 
)

Definition at line 186 of file fft.cxx.

Referenced by main().

int main ( int  argc,
char **  argv 
)

Definition at line 197 of file fft.cxx.

References fft(), getCmdOption(), ctf.core::np(), and ctf.core::rank().

std::complex<double> omega ( int  i,
int  n 
)

Definition at line 17 of file fft.cxx.

References ctf.core::exp(), and ctf.core::imag().

Referenced by DFT_matrix(), setup(), smooth_jacobi(), and twiddle_matrix().

Matrix< std::complex<double> > twiddle_matrix ( int  n,
World wrld 
)

Definition at line 40 of file fft.cxx.

References CTF::Tensor< dtype >::get_local_data(), ctf.core::np(), NS, omega(), and CTF::Tensor< dtype >::write().

Referenced by fft().