基于fft算法的MATLAB仿真

该方法易于在FPGA上实现相关算法,比直接用相乘来得简单,而且但相关点数越多计算量相对而言比直接求解减少

 仿真程序如下:

%步骤:

%(1) x,y都在高位补M(数据长度)个零

%(2) 求2M点FFT,X(K),Y(K)

%(3) 求乘积,Rxy(K)=X(K)*Y‘(K) 注:Y(K)取共轭

%(4) 求2M点IFFT, rxy= IFFT(Rxy(K))

clc;close all;clear all;

x1=load(‘D:My DocumentsMATLABdens_flow_ejieRF1.txt&     rs   quo;); %导入数据

y1=load(‘D:My DocumentsMATLABdens_flow_ejieRF2.txt’); %导入数据

xcorr_size=512; %定义互相关的长度

xk=zeros(1,2*xcorr_size);

yk=zeros(1,2*xcorr_size);

label_x=zeros(1,2*xcorr_size);

velo= zeros(1,2*xcorr_size);

xk(1:xcorr_size)=x1(1:xcorr_size); %以下为对比实验,将用fft相关算法和XCORR实现进行对比,发现不用使用反折方法也能实现相关

yk(1:xcorr_size)=y1(1:xcorr_size); %实现效果非常好

XK_FFT=fft(xk);

YK_FFT=conj(fft(yk)); %求共轭,只是在复数乘法之前加了一个 取共轭操作

ZK= XK_FFT.*YK_FFT;

rxy=fftshift(ifft(ZK)); %用取实部的操作一样

figure;

plot(rxy);

        TI   tle(‘fft算法实现线性相关’);

rxy2=xcorr(xk(1:xcorr_size),yk(1:xcorr_size));

figure;

plot(rxy2);

 TI tle(‘matlab自带相关函数xcorr结果’);

 基于fft算法的MATLAB仿真_设计制作_电源/新能源

94
6
0
1

相关资讯

  1. 1、钉钉二维码名片在哪看?二维码名片查看方法分享2276
  2. 2、Windows10系统1909升级20H2失败的解决方法3401
  3. 3、VMware软件怎么激活?VMware软件激活教程1914
  4. 4、Win10系统自带的office怎么卸载?3026
  5. 5、QQ收藏在哪看?电脑版QQ收藏查看方法778
  6. 6、Win10电脑win键失灵怎么解决?4614
  7. 7、Win11无法安装中文包语言包怎么解决?4230
  8. 8、怎么判断主板声卡坏了?主板声卡损坏的症状2907
  9. 9、wps中怎么插入十字箭头?wps中插入十字箭头的步骤966
  10. 10、Win10电脑无法安装软件怎么办?562
全部评论(0)
我也有话说
0
收藏
点赞
顶部