博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
负数,傅里叶变换,反傅里叶变换
阅读量:4618 次
发布时间:2019-06-09

本文共 2668 字,大约阅读时间需要 8 分钟。

#include 
#include "C:\Users\Administrator\Desktop\fftw\fftw-3.3.4-dll32\fftw3.h"#include "D:\Qt\Eigen\Dense"#include
#include
#include
using namespace std;// using namespace fftw_complex;#define N 3class MyComplex:public complex
{public: MyComplex():complex
(0.0, 0.0){m_r=0.0;m_i=0.0;} MyComplex(double r, double i):complex
(r,i){m_r=r;m_i=i;} double getR(){return m_r;} double getI(){return m_i;}private: double m_r; double m_i;};int main(int argc, char *argv[]){ QCoreApplication a(argc, argv); //complex
www=(1,5); MyComplex www(2,4); std::cout<
<

 

QT -= guiCONFIG += c++11 consoleCONFIG -= app_bundleLIBS += -L"C:\Users\Administrator\Desktop\fftw\fftw-3.3.4-dll32" \    -llibfftw3-3DEFINES += QT_DEPRECATED_WARNINGSSOURCES += main.cpp

#include
#include"C:\Users\Administrator\Desktop\fftw\fftw-3.3.4-dll32\fftw3.h"
#include"D:\Qt\Eigen\Dense"
#include
#include
#include
 
usingnamespacestd;
//usingnamespacefftw_complex;
#defineN3
 
classMyComplex:publiccomplex
{
public:
MyComplex():complex
(0.0,0.0){
m_r=0.0;m_i=0.0;}
MyComplex(doubler,doublei):complex
(r,i){
m_r=r;m_i=i;}
doublegetR(){
returnm_r;}
doublegetI(){
returnm_i;}
private:
doublem_r;
doublem_i;
};
 
intmain(intargc,char*argv[])
{
QCoreApplicationa(argc,argv);
 
//complex
www=(1,5);
MyComplexwww(2,4);
std::cout<
<
std::cout<
<
std::cout<
<
 
inti;
fftw_complex*in,*out,*result;
in=(fftw_complex*)fftw_malloc(sizeof(fftw_complex)*N*N);
out=(fftw_complex*)fftw_malloc(sizeof(fftw_complex)*N*N);
result=(fftw_complex*)fftw_malloc(sizeof(fftw_complex)*N*N);
if(in==NULL||out==NULL)
{
printf("ERROR!");
}
else
{
//for(i=0;i
{
in[0][0]=0;in[0][1]=0;
in[1][0]=1;in[1][1]=0;
in[2][0]=2;in[2][1]=0;
in[3][0]=2;in[3][1]=0;
in[4][0]=3;in[4][1]=0;
in[5][0]=4;in[5][1]=0;
in[6][0]=3;in[6][1]=0;
in[7][0]=2;in[7][1]=0;
in[8][0]=1;in[8][1]=0;
}
}
for(i=0;i
{
printf("%.6f,%.6fi",in[i][0],in[i][1]);
if(i==2||i==5||i==8)printf("\n");
}
 
//傅里叶变换
cout<
fftw_planp=fftw_plan_dft_2d(N,N,in,out,FFTW_FORWARD,FFTW_ESTIMATE);
fftw_execute(p);
for(i=0;i
{
printf("%.6f,%.6fi",out[i][0],out[i][1]);
if(i==2||i==5||i==8)printf("\n");
}
 
//逆傅里叶变换
cout<
fftw_planpp=fftw_plan_dft_2d(N,N,in,result,FFTW_BACKWARD,FFTW_ESTIMATE);
fftw_execute(pp);
for(i=0;i
{
printf("%.6f,%.6fi",result[i][0]/(N*N),result[i][1]/(N*N));
if(i==2||i==5||i==8)printf("\n");
}
 
 
fftw_destroy_plan(p);
fftw_cleanup();
if(in!=NULL)
fftw_free(in);
if(out!=NULL)
fftw_free(out);
}
 

转载于:https://www.cnblogs.com/wangbin-heng/p/10203420.html

你可能感兴趣的文章
linux_命令格式和命令提示符
查看>>
Cocos2d-X-3.0之后的版本的环境搭建
查看>>
when case group by 的用法集合
查看>>
认识XmlReader
查看>>
JAVA学习Swing章节标签JLabel中图标的使用
查看>>
sqlserver,oracle,mysql等的driver驱动,url怎么写
查看>>
局部变量和static变量的区别
查看>>
IE下iframe不能正常加载,显示空白
查看>>
mysql服务性能优化—my.cnf配置说明详解
查看>>
洛谷P1908 逆序对
查看>>
noip模拟赛 排列
查看>>
List 中添加多个List集合以及add() 与addAll()的区别
查看>>
如何处理测试人员的流动问题?
查看>>
1.border-image
查看>>
PagerIndicator主题样式修改
查看>>
java中HashMap类用法
查看>>
完整部署CentOS7.2+OpenStack+kvm 云平台环境(2)--云硬盘等后续配置
查看>>
分布式监控系统Zabbix-完整安装记录 -添加端口监控
查看>>
Python之反向迭代
查看>>
STM32F4 输入输出(GPIO)模式理解
查看>>