fftreal.c

来自「该文件为c++的数学函数库!是一个非常有用的编程工具.它含有各种数学函数,为科学」· C语言 代码 · 共 60 行

C
60
字号
#include <stdio.h>#include <math.h>#include <gsl/gsl_errno.h>#include <gsl/gsl_fft_real.h>#include <gsl/gsl_fft_halfcomplex.h>intmain (void){  int i, n = 100;  double data[n];  gsl_fft_real_wavetable * real;  gsl_fft_halfcomplex_wavetable * hc;  gsl_fft_real_workspace * work;  for (i = 0; i < n; i++)    {      data[i] = 0.0;    }  for (i = n / 3; i < 2 * n / 3; i++)    {      data[i] = 1.0;    }  for (i = 0; i < n; i++)    {      printf ("%d: %e\n", i, data[i]);    }  printf ("\n");  work = gsl_fft_real_workspace_alloc (n);  real = gsl_fft_real_wavetable_alloc (n);  gsl_fft_real_transform (data, 1, n,                           real, work);  gsl_fft_real_wavetable_free (real);  for (i = 11; i < n; i++)    {      data[i] = 0;    }  hc = gsl_fft_halfcomplex_wavetable_alloc (n);  gsl_fft_halfcomplex_inverse (data, 1, n,                                hc, work);  gsl_fft_halfcomplex_wavetable_free (hc);  for (i = 0; i < n; i++)    {      printf ("%d: %e\n", i, data[i]);    }  gsl_fft_real_workspace_free (work);  return 0;}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?