首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

matlab生成旋转因子做fft

matlab生成旋转因子做fft

matlab生成旋转因子做fft

%生成旋转因子表
%w
代表返回值,n运算点数
%uint8
一个字节,uint16二个字节,0-65535uint32四个字节,所以必须注意其占用的内存数据
%
如果不涉及运算时间要求的话,应该选择浮点运算,也不必人为放大w的,这样可以使精度提高*/
function [w]=fftw
clear all;
clc;
n=64;      %fft
点数,可变
% for i=1:n/2
%     w(2*i-1)=cos(-2*pi*(i-1)/n);%
产生正变换的选择因子
%     w(2*i)=sin(-2*pi*(i-1)/n);
% end
%%
for i=1:n/2
    w(2*i-1)=cos(2*pi*(i-1)/n);%
产生逆变换的选择因子
    w(2*i)=sin(2*pi*(i-1)/n);
end

%%
% w=w.*10000;%
放大倍数,倍数越大,显然精度越高
%  w=int16(w);

%
如何保存w作为一个表,fopen可以帮我们直接简历一个txt文件,注意在这里又出现了二进制文件和文本文件的区别
%wt,
我们即可以以文本格式打开这个文件,好处是\n的作用得以体现,不会出现黑色实心块。反之,不会换行,并且出现黑色实心块
%
参考文献,matlab库函数一书fopen,同时help文档中fopenfprintf也能有所体现
fid = fopen('w1.txt','wt');
%fprintf(fid,'%d,%d,%d,%d,\n',w);
fprintf(fid,'%3.6f,%3.6f,%3.6f,%3.6f,\n',w);%
注意这样输出也是可以的,
fclose(fid);







http://www.eelab.tk/forum.php?mod=viewthread&tid=53&extra=page%3D1
返回列表