安装fftw到window(vs2010)及使用fftw库函数实现4096点fft变换计算
Windows下FFTW库的安装:
1. 从网站http://www.fftw.org/install/windows.html上下载最新的预编译文件:
32-bit version: fftw-3.2.2.pl1-dll32.zip (1.8MB)
64-bit version: fftw-3.2.2-dll64.zip (2.2MB)
(这里建议下载32位机文件/64位向下兼容)
2. 使用Lib.exe生成相应的Lib文件 :vs2010的安装路径为:D:\Program Files (x86)\Microsoft Visual Studio 10.0
Lib.exe在VS的安装目录下:
32位版本:D:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE (32位X86)
64位版本:D:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\amd64 (AMD64位CPU)
D:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\x86_ia64(英特尔X86架构和ia64(ia64安腾架构,应用很少很少))
D:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\x86_amd64 (AMD64位和英特尔X86CPU,最常用)
cmd进入到Lib.exe目录下,以64位为例:
进入到D:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\x86_amd64。
将D:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE:mspdb100.dll,mspdbcore.dll,mspdbsrv.exe,msobj100.dll 复制到D:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\x86_amd64里面。
把libfftw3-3.def,libfftw3f-3.def,libfftw3l-3.def也拷到bin目录对应的平台下——x86_amd64里面。
执行Lib命令,生成库文件libfftw3-3.lib libfftw3f-3.lib libfftw3l-3.lib
32位版本:
lib /def:libfftw3f-3.def
lib /def:libfftw3-3.def
lib /def:libfftw3l-3.def
64位版本:
lib /machine:x64 /def:libfftw3f-3.def
lib /machine:x64 /def:libfftw3-3.def
lib /machine:x64 /def:libfftw3l-3.def
3.将libfftw3f-3.dll libfftw3-3.dll libfftw3l-3.dll放入C:\Windows\SysWOW64(32位放在windows/system32)中,然后将生成的库文件libfftw3-3.lib libfftw3f-3.lib libfftw3l-3.lib放入vc中的lib文件夹,把fftw3.h放入vc中的include文件夹。
新建工程应用:
头文件:#include”fftw3.h“,
设置参数:”项目“==>"项目属性"==>"配置属性"==>"链接器"==>"输入"==>"附加依赖项",将以下三项添加进去:
libfftw3-3.lib
libfftw3f-3.lib
libfftw3l-3.lib
代码:
// test_6.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
#include "fftw3.h"
#include <time.h>
int main()
{
clock_t start,finish; //定义clock()函数返回值保存变量
start=clock(); //启动计时,调用clock()开始每过千分之一毫秒start+1
fftw_complex *in, *out; //定义两个复数指针,分别存放输入输出
fftw_plan p; //定义一个计划,计划名叫p
int N= ; //fft计算的点数
in = (fftw_complex*) fftw_malloc(sizeof(fftw_complex) * N); //开辟存放起始数据的内存空间
out = (fftw_complex*) fftw_malloc(sizeof(fftw_complex) * N);
/****打印初始值****/
for( int i=; i < N; i++)
{
in[i][] = i;
in[i][] = 0.0;
printf("%6.2f+%6.2fj",in[i][],in[i][]);
}
printf("\n");
/***制定计划p**/
p=fftw_plan_dft_1d(N,in,out, FFTW_FORWARD, FFTW_ESTIMATE);
/***执行指定的计划p**/
fftw_execute(p);
/******打印输出fft变换之后的数据*****/
for(int j = ;j < N;j++)
{
printf("%6.9f+%6.9fj\n",out[j][],out[j][]);
}
printf("\n");
/****完成计划之后,撤销计划******/
fftw_destroy_plan(p);
/*****释放内存空间******/
fftw_free(in);
fftw_free(out);
/***统计执行时间****/
finish=(double)clock();
printf("time=%f\n",(double)(finish-start)/CLOCKS_PER_SEC);
return ;
}
安装fftw到window(vs2010)及使用fftw库函数实现4096点fft变换计算的更多相关文章
- python3.4 安装 scrapy 报错 VS2010
安装scrapy框架报错是常见问题 还好,本人只碰到其中一个bug,以下是此次安装经验 环境 py3.4 windows7 64位 安装有VS2010 pip包管理(pycharm) 报错信息 安装l ...
- vs2013安装闪退及vs2010 vs2013打开时提示 未能完成的操作 及vs2013安装时出现图片后闪退
vs2013打开时提示如上图,vs2010只有 未能完成的操作 这样的提示. 这时.net 4.0开发的程序打开也毫无反应,应该是.net framework出了问题.查看控制面板-卸载程序,发现 ...
- win7 环境安装Python + IDE(vs2010)开发
1.下载python安装文件 python-2.7.10.msi 网址:https://www.python.org/downloads/release/python-2710/ ,根据自己环境,选择 ...
- libpng安装与配置(Win7+VS2010)
一.下载 libpng:http://libmng.com/pub/png/libpng.html zlib:http://www.zlib.net/ IDE:VS2010 二.编译 将下载的两个zi ...
- 安装双系统window +ubuntu
在网上,试过很多种方法,有U盘制作安装,感觉好复杂,这边有一个简便的方法就是使用Ubuntu 的 wubi安装. 一直想安装双Ubuntu 系统很久了,可是以前在大学时期的时候一直努力,好像都不行,这 ...
- mongodb的安装使用,window和centos环境
官网:https://www.mongodb.org/downloads 版本:最终稳定版 (mongodb-win32-x86_64-2008plus-ssl-3.2.6-signed.msi 绿色 ...
- 学习笔记17—circos安装集(window环境)
Windows7环境下Circos使用教程 一.下载安装软件包 1.strawberry perl 因为Circos软件是依赖perl语言编译环境的,但是windows环境下默认是没有perl的,所以 ...
- 批处理 安装、卸载 window service
注意:安装中调用了卸载的bat,安装之前先卸载...PS:可以删除 安装代码: @echo off set filename=LXServer.exe set servicename=Service1 ...
- python 安装 wxPtyhon (window)
检查是否安装pip 打开cmd(全局安装的python)测试是否安装了pip 工具 以上是安装了pip , 执行下载并安装 wxPtyhon 第一种方法: 也可以使用其他的地址 官网地址 https: ...
随机推荐
- 从npm 角度理解 mvn 的 pom.xml
从npm 角度理解 mvn 的 pom.xml pom -- project object model. 用于描述项目的配置: 基础说明 依赖 如何构建运行 类似 node.js 的 package. ...
- 【SpringBoot】常用Starter介绍和整合模板引擎Freemaker、thymeleaf
========7.SpringBoot常用Starter介绍和整合模板引擎Freemaker.thymeleaf ========================= 1.SpringBoot Sta ...
- php 会话控制(关于session的维护与生命周期)
Session是由应用服务器维持的一个服务器端的存储空间,用户在连接服务器时,会由服务器创建生成一个唯一的sessionID,用该sessionID为标识符来存取服务器端的Session存储空间,在会 ...
- js+css jQuery实现页面后退执行 & 遮罩弹框
JS部分 <script src="http://libs.baidu.com/jquery/2.0.0/jquery.js"></script> < ...
- 第0章 概述及常见dos命令
计算机发展史 计算机的发展历史有多长?真正意义上的计算机诞生,距今也只有80多年的时间.80年,对于每一个人来说,是很长的时间,但对于整个历史来说,只是短短的一瞬间. 从第一代电子计算机的发明,到今天 ...
- 在flask框架中,对wtforms的SelectMultipleField的一个报错处理
先粘贴代码: form.py文件: users = SelectMultipleField( label="请选择用户", validators=[ DataRequired(&q ...
- Spark资源配置(核数与内存)
转载自:http://blog.csdn.net/zrc199021/article/details/54020692 关于所在节点核数怎么看? =========================== ...
- 二进制 转换成十进制 BCD码(加3移位法)
"原来的二进制数十几位,则左移时就要左移几位" "二进制数调整BCD码的方法是将二进制码左移8次,每次移位后都检查低四位LSD+3是否大于7,如是则加3,否则不加,高4位 ...
- 6、 (★、※)root that results in a highest tree
问题:对于一棵特定的树,选择合适的根结点,使得树的高度最大. 思路: 先选择一个结点,从该结点开始遍历整棵树,获取能达到的最深的顶点(记为结点集合A): 然后从集合A中任意一个结点出发遍历整棵树,获取 ...
- Windows配置ffmpeg
一.ffmpeg简介 ffmpeg是一套可以用来记录.转换数字音频.视频,并能将其转化为流的开源计算机程序.采用LGPL或GPL许可证.它提供了录制.转换以及流化音视频的完整解决方案. 支持操作系统: ...