本文整理汇总了C++中FFT::speed方法的典型用法代码示例。如果您正苦于以下问题:C++ FFT::speed方法的具体用法?C++ FFT::speed怎么用?C++ FFT::speed使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类FFT
的用法示例。
在下文中一共展示了FFT::speed方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: main
int main(int argc, char*argv[])
{
// create FFT class implementation
// each implementation has its own plan map.
FFT<double> fft;
// create some data
size_t N = 1024 * 1024;
std::vector<complex<double>,fftalloc<complex<double> > > data(N);
std::vector<complex<double>,fftalloc<complex<double> > > dataFourier(N);
std::vector<complex<double>,fftalloc<complex<double> > > dataCalc(N);
std::cout << "1) --- original data ---" << endl;
for(std::vector<complex<double> >::size_type i = 0; i != data.size(); i++) {
data[i] = polar(sin(double(i)/N * M_PI * 2), 0.0);
// std::cout << i << data[i] << endl;
}
// fft
std::cout << "2) --- fft data ---" << endl;
fft.fwd(dataFourier, data);
std::cout << "speed / ms: " << fft.speed()/1000 << endl;
// for(std::vector<complex<double> >::size_type i = 0; i != dataFourier.size(); i++) {
// std::cout << i << dataFourier[i] << endl;
// }
// ifft
std::cout << "3) --- ifft data ---" << endl;
fft.inv(dataCalc, dataFourier);
std::cout << "speed / ms: " << fft.speed()/1000 << endl;
// for(std::vector<complex<double> >::size_type i = 0; i != dataCalc.size(); i++) {
// std::cout << i << dataCalc[i] << endl;
// }
// std::cout << "4) --- comparison data ---" << endl;
// for(std::vector<complex<double> >::size_type i = 0; i != dataCalc.size(); i++) {
// std::cout << i << data[i] - dataCalc[i] << endl;
// }
std::getchar();
return 0;
}