matlab中fft插值,在加窗插值FFT分析中,如何用matlab求得双谱线插值的修正...
下面是我在之前论坛里找到的程序里进行改编的,但还是弄不来,希望懂的人能指导下
f0=50;
fs=50*256;
N=2048;%2048/256=8
rad=180/pi;
n=[0:1:N-1];
xb=[220,0.5,25,0.4,6,0.3,4,0.2,2];
Q=[pi/3,pi/3,pi/6,pi/3,pi/3,pi/3,pi/3,pi/3,pi/3];
s=zeros(1,N);
%s=220*sin(2*pi*f0*n./fs+pi/6)+0.5*sin(4*pi*f0*n./fs+pi/5)+0.2*sin(8*pi*f0*n./fs+pi/7)+0.07*sin(16*pi*f0*n./fs+pi/5)+0.5*sin(32*pi*f0*n./fs+pi/5);
for i=1:9
s=s+xb(i)*sin(2*pi*f0*i*n./fs+Q(i));
end
w=0.338946-0.481973*cos(2*pi*n./N)+0.161054*cos(4*pi*n./N)-0.018027*cos(6*pi*n./N);
r=s.*w;
v=fft(r,N);
u=abs(v);
vf=abs(v)/1024;
%为了求出谐波,那么必须找出基波,在35-65中频谱最大值所对应的就是离基波频率最近的那个点
y=0;
for i=fix(35/(fs/N)):fix(65/(fs/N))
if u(i+1)>y
y=u(i+1);
num=i+1;
end
end
%break
%谱线最大值已经找到,下面是要确定k1和k2还有y1和y2
k1=zeros(1,9);
k2=zeros(1,9);
k0=zeros(1,9);
b=zeros(1,9);
aa=zeros(1,9);
y1=zeros(1,9);
y2=zeros(1,9);
y3=zeros(1,9);
k1(1)=num;
k0(1)=f0/(fs/N);
aa(1)=k0(1)-k1(1)-0.5;
y1(1)=u(k1(1));%
k2(1)=k1(1)+1;
y2(1)=u(k2(1));
y3(1)=u(k1(1)-1);
max=y2(1);
if y3(1)>y2(1)
max=y3(1);
end
if max==y3(1);
t=y1(1);
y1(1)=max;
y2(1)=t;
k1(1)=k1(1)-1;%根据公式,谱线谁在前谁是y1,对应的就是k1
k2(1)=k1(1)+1;%根据公式,谱线谁在后谁是y2,对应的就是k2
end
%%k1和k2还有y1和y2确定完毕
%%确定αβ,在这里用a和b表示,确定基波频率
A=zeros(1,63);
ff=zeros(1,63);
Ph=zeros(1,63);
b(1)=(y2(1)-y1(1))/(y2(1)+y1(1));
for i=2:9
k1(i)=fix(i*50/(fs/N));
k2(i)=k1(i)+1;
k0(i)=f0*i/(fs/N);
y1(i)=u(k1(i)+1);
y2(i)=u(k2(i)+1);
b(i)=(y2(i)-y1(i))/(y2(i)+y1(i));
aa(i)=k0(i)-k1(i)-0.5;
end
n=3;
p=polyfit(aa,b,n);
plot(aa,b,0:0.01:10,polyval(p,0:0.01:10))
matlab中fft插值,在加窗插值FFT分析中,如何用matlab求得双谱线插值的修正...相关推荐
- 双谱线插值与三谱线插值FFT的MATLAB实现
双谱线插值 f0=50.1; % 基波频率 fs=1500; % 采样频率 N=512; % 数据长度 n=0:N-1; % 数据索引 rad=pi/180; % 角度和弧度的转换因子 xb=[1,0 ...
- matlab哈宁低通,Matlab实现电网谐波测量加窗插值算法.pdf
收稿日期 2005 03 16 作者简介 张鸿博 1980 男 河南舞钢人 硕士生 第16卷第2期中原工学院学报Vol 16 No 2 2005年04月JOURNAL OF ZHONG YUAN IN ...
- 了解FFT和信号加窗
0 概览 学习信号时域和频域.快速傅立叶变换(FFT).加窗,以及如何通过这些操作来加深对信号的认识. 1. 理解时域.频域.FFT 傅立叶变换有助于理解常见的信号,以及如何辨别信号中的错误. 尽管傅 ...
- 【TWVRP】基于matlab鲸鱼算法求解带时间窗开放式车辆路径问题【含Matlab源码 1986期】
⛄一.鲸鱼算法简介 鲸鱼优化算法(Whale Optimization Algorithm,WOA)是澳大利亚学者Mirjalili等根据座头鲸的狩猎方式提出的一种新的群智能优化算法.鲸鱼在大海中随机 ...
- Java 中pdf部分内容加边线_Java 在PDF中添加骑缝章示例解析
骑缝章是用于往来业务合同,以确保合同真实.有效的印章加盖方法,是一种防范风险的重要方式.在Java程序中,可以通过使用工具来辅助加盖这种骑缝章. 工具:Free Spire.PDF for Java ...
- java中给组合框加监听器,如何区分ActionEvent中的多个组合框
我有两个类,一个包含两个组合框的监听器类和一个监听两个组合框的监听器类.该软件是关于披萨的,而组合框的选择是披萨类型和数量,我会发布相关的代码. (gui class) private Listene ...
- 在php中怎么给表格加背景,怎么在表格中添加背景图
看别人的表格添加了背景图片是不是特别好看,那么你想不想学会这项技能呢?下面有两种方法让你快速对表格添加背景图,让我们一起学习一下吧! 1.改良背景法为表格添加背景图 做完一个表格,有时我们会觉得其比较 ...
- MATLAB算法实战应用案例精讲-【连接分析】PageRank(附MATLAB、C++、R语言、Java和Python代码)
目录 前言 几个相关概念 (1)出链 (2)入链 (3)无出链 (
- matlab数据整周期截断,凯塞窗四谱线插值FFT的电力谐波分析方法
论文写作指导:请加QQ229366758 摘 要:针对在采用快速傅里叶变换分析电力谐波时,对信号非同步采样以及非整周期截断的情况下,会产生频谱泄露和栅栏效应,无法有效检测谐波的各参数值等问题,提出了加 ...
最新文章
- 用对方法,开发与部署深度学习原来如此简单……
- 【Android FFMPEG 开发】Android 中执行 FFMPEG 指令 ( 集成 mobile-ffmpeg 框架 | 完整代码示例 )
- 小程序笔记一:基础设置
- 【转】QT中添加的资源文件qrc时的路径问题小结
- 网络(11)-什么是RestFul风格?
- MySQL上线,检查数据库设计的“十条合规”
- 解决listview点击item失效
- 计算机休眠变关机,笔记本电脑一进入睡眠休眠就关机!重启后就显 – 手机爱问...
- 4 读写文件_WEB安全之SQL注入(4)——读写文件
- NYOJ题目1170-最大的数
- java 去掉字符串最后几个字符_java-删除字符串的最后两个字符
- c# Socket Udp通讯示例源码
- MCS-51单片机指令系统总结(自学笔记)
- FFmpeg无损转换ts为mp4
- 如何做好项目中的风险控制
- 404页面是什么意思?怎么正确设置?
- python的repl模式_为什么解释器的交互模式又叫 REPL
- 初体验微信小程序记事本
- MWORKS来了(一)| 体验焕然一新的智能建模
- 17 Flask mega-tutorial 第17章 在Linux上部署(腾讯云 Ubuntu)【极其详细的部署过程】
热门文章
- edius制作视频音画不同步原因
- MySQL 表的增删改查(进阶篇②)· 联合查询 内连接 外连接 · 自连接 · 子查询 exists · 合并查询 union
- 聚划算十周年被赋予新使命: 满足消费者新需求 提升供给侧效率
- 微信小程序getWXACodeUnlimit接口调用和返回二进制流转换成图片保存到本地
- ESXi系统U盘做存储
- Javascript--04 JavaScript的内部对象
- 使用USBWriter做U盘启动盘后U盘在盘中不显示的解决办法
- JavaScript-84:利用函数求任意两个数的和
- JAVA的奇门遁甲--lombok简单使用
- sql获取所有上级,下级