主要内容

fftw

定义FFT算法的确定方法

描述

方法= fftw(“计划”)返回快速傅里叶变换函数的方法fftfft2fftn传输线ifft2,ifftn用于确定转换算法。默认方法为“估计”,它根据数据的大小决定算法。

例子

Previous = fftw('planner', '计划',方法设置方法并可选地返回前一个方法。例如,fftw(“策划”、“测量”)根据数据的大小和类型选择最快的算法。

例子

fftinfo= fftw (智慧返回在当前MATLAB中建立的最优变换参数®中指定的精度智慧.例如,Fftinfo = fftw('dwisdom')保存当前双精度转换参数。

例子

Previous = fftw(智慧fftinfo应用中的参数fftinfo中指定的精度的变换算法智慧

例子

全部折叠

fftw函数可以通过尝试基于数据的大小和类型优化计算来提高傅里叶变换函数的性能。

清除任何现有的双精度转换参数。

fftw (“dwisdom”[]);

将当前MATLAB®会话中用于优化傅里叶变换的方法设置为“测量”

fftw (“计划”“测量”);

定义一个随机向量并使用fft函数来计算傅里叶变换。fft使用一种尝试优化500 × 1变换计算的算法。第一次调用fft可能比正常情况要慢,但随后的调用将明显更快。

X =兰特(500,1);抽搐;fft (X);toc;
运行时间为0.066525秒。
抽搐;fft (X);toc;
运行时间为0.000168秒。

将当前的双精度变换算法参数分配给变量fftinfo供以后使用。

Fftinfo = fftw(“dwisdom”);

应用存储在变量中的参数信息fftinfo用于将来的转换函数调用。

fftw (“dwisdom”, fftinfo);

输入参数

全部折叠

设置转换参数的方法,指定为以下之一:

  • “估计”-根据问题的大小确定最佳猜测变换算法。

  • “测量”-通过计算多个变换和测量运行时间来找到一个更好的算法。

  • “病人”运行更大范围的测试“测量”,得到了较好的变换算法,但代价是确定参数的计算量较高。

  • “详尽”-运行所有测试,包括那些不太可能是最优的测试,产生最佳算法,但确定参数的计算成本最高。

  • “混合”-使用的组合“测量”对于维度长度为8192或更小的变换和“估计”对于维度长度大于8192的变换。

数据类型:字符|字符串

转换参数精度,指定为任意一种“swisdom”“dwisdom”.的选项“swisdom”指定用于单精度计算的转换参数“dwisdom”为双精度计算指定参数。

数据类型:字符

方法返回的转换参数的字符数组fftw(智慧)或者空数组[].空数组[]清除数据库。

数据类型:字符

提示

  • 返回的转换参数fftw当每次会话使用相同版本的MATLAB在一台计算机上保存和应用时,它们是最有用的。在计算机之间传输保存的参数可能导致性能下降,即使两台计算机具有相同的操作系统和MATLAB版本。

算法

  • 对于2之间的2的幂的变换长度14和222, MATLAB利用其内部数据库中的预加载信息来优化变换计算。除非使用该命令清除数据库,否则不会对精确的2次方执行调优fftw(智慧,[])

参考文献

[1] FFTW (http://www.fftw.org

扩展功能

另请参阅

|||||

R2006a之前介绍