MATLAB低通滤波器选频实现 低通滤波器matlab代码







%频率不同的三个正弦波信号相加,分别 输出时域波形和频域频谱 three_cos.m%设计低通滤波器,改变低通滤波器截止频率,输出不同波形%1.波形产生程序 three_cos(t);%2.傅里叶正变换[f, sf]=FFT_SHIFT(t, st);%3.傅里叶反变换[t,st]=IFFT_SHIFT(f,Sf);%4.低通滤波器[t,st]=RECT_LPF(f,Sf,B);
% Signaldt=0.01; %时间采样间隔T=5; %信号持续时间N=floor(T/dt); %点数t=[0:N-1]*dt; %t
f1=1;f2=5;f3=10; %信号不同频率值m1=cos(2*pi*f1*t);m2=cos(2*pi*f2*t);m3=cos(2*pi*f3*t);mt1=m1+m2+m3;[f,mt1f]=FFT_SHIFT(t,mt1); %2.傅里叶正变换 %输出:f-抽样频率;mt1f-频率;输入:t-时间;mt1-输入波形fmax=2; �=1;f2=5;f3=10;%信号不同频率值B1=fmax %设置低通滤波器带宽,准备调用低通滤波器[t,mt1_t]=RECT_LPF(f,mt1f,B1); %低通滤波器滤除高频,由B1决定[f,mt1_tf]=FFT_SHIFT(t,mt1_t);%2.傅里叶正变换
%时域、频域显示subplot(511);plot(t,m1);ylabel('m1(t)');title('三个不同频率正弦波合成波和频谱');subplot(512);plot(t,m2);ylabel('m2(t)');subplot(513);plot(t,m3);ylabel('m3(t)');subplot(514);plot(t,mt1);ylabel('m(t)');subplot(515);plot(f,mt1f);ylabel('m(f)');axis([-40,40,0,3]);
figure(2)subplot(511);plot(t,m1);ylabel('m1(t)');title('低通滤波器选频合成波和频谱');subplot(512);plot(t,m2);ylabel('m2(t)');subplot(513);plot(t,m3);ylabel('m3(t)');subplot(514);plot(t,mt1_t);ylabel('m(t)');subplot(515);plot(f,mt1_tf);ylabel('fmax=2');axis([-40,40,0,3]);%=======================================% 调用函数 傅里叶变换function [f, sf]=FFT_SHIFT(t, st)%This function is FFT to calculate a signal’s Fouriertransform%Input: t: sampling time , st : signal data. Time length mustgreater than 2%output: f : sampling frequency , sf: frequency%output is the frequency and the signal spectrumdt=t(2)-t(1);T=t(end);df=1/T;N=length(t);f=[-N/2:N/2-1]*df;sf=fft(st);sf=T/N*fftshift(sf);
% 傅里叶反变换function [t,st]=IFFT_SHIFT(f,Sf)df=f(2)-f(1);fmax=(f(end)-f(1)+df);dt=1/fmax;N=length(f);t=[0:N-1]*dt;Sf=fftshift(Sf);st=fmax*ifft(Sf);st=real(st);
% 赵鸿图-低通滤波器function [t,st]=RECT_LPF(f,Sf,B)df=f(2)-f(1);fN=length(f);RectH=zeros(1,fN);BN=floor(B/df);BN_SHIFT=[-BN:BN-1]+floor(fN/2);RectH(BN_SHIFT)=1;Yf=RectH.*Sf;[t,st]=IFFT_SHIFT(f,Yf);
MATLAB低通滤波器选频实现 低通滤波器matlab代码
%参考书: 赵鸿图 茅艳 通信原理MATLAB仿真教材[M].人民邮电出版社

  

爱华网本文地址 » http://www.aihuau.com/a/25101016/286798.html

更多阅读

Matlab实现霍夫变换 霍夫变换matlab代码

本代码提供了matlab下求取经过霍夫变换的直线斜率,并将其联合,代码见下方,实验结果见文末。%入口图像为BW,出口图像为f%optimizefrommain_optimize,merelyselect2lines,onehaspositive%slope,theotherhasnegativeslopeclearall,clo

电视机用简易无线耳机 电视机 蓝牙耳机

生活中有不少电视迷,他们经常看电视到深夜,这时如果电视音量开太大会影响家人休息,如果太小声又听不清,本文推荐一个电视机用无线耳机电路,可很好地解决这个问题。电路由发射电路与接收电路组成,其原理简单说明如下:发射电路:如图一所示。信

元胞自动机森林火灾模型 的Matlab代码 元胞自动机 森林火灾

给大家做元胞自动机一点参考。% 元胞自动机:森林火灾模型% 规则:% (1)正在燃烧的树变成空格位;% (2)如果绿树格位的最近邻居中有一个树在燃烧,则它变成正在燃烧的树;% (3)在空格位,树以概率p生长;% (4)在最近的邻居中没有正在燃烧的树的情

规则引擎实现探讨 drools规则引擎

2007-01-10 21:58最近在处理自定义表单时,需要自定义业务规则,最终在网上看到jxb8901先生的文章,和我的部分想法类似,特别是对于表达式的要求上,非常赞赏。区别在于我需要的表达式是基于组件的。原文如下:一、问题系统要求实现类似如下规

声明:《MATLAB低通滤波器选频实现 低通滤波器matlab代码》为网友谢了荼蘼分享!如侵犯到您的合法权益请联系我们删除