module FFTW3

Public Class Methods

fft(*args) click to toggle source
# File lib/fftw3.rb, line 7
def self.fft(*args)
  args.insert(1, -1)
  fft_raw(*args)
end
fft_raw(*args) click to toggle source
static VALUE
na_fftw3(int argc, VALUE *argv, VALUE self)
{
  VALUE val;
  volatile VALUE v1;
  struct NARRAY *a1;

  if (argc<2){
    rb_raise(rb_eArgError, "Usage: fftw(narray, direction [,dim0,dim1,...])");
  }
  val = argv[0];
  v1 = na_to_narray(val);
  GetNArray(v1,a1);
  if(a1->type <= NA_SFLOAT || a1->type == NA_SCOMPLEX ){
      return( na_fftw3_float(argc, argv, self) );
  } else {
      return( na_fftw3_double(argc, argv, self) );
  }

}
ifft(*args) click to toggle source
# File lib/fftw3.rb, line 12
def self.ifft(*args)
  args.insert(1, 1)
  fft_raw(*args)
end