matlab理想低通滤波器代码_matlab简单低通滤波器

matlab理想低通滤波器代码_matlab简单低通滤波器低通滤波器的设计设计低通滤波器的要求:设低通滤波器通带截止频率为ωp=0.2π,阻带截止频率为ωs=0.4π,通带波纹Ag=0.5dB,最小阻带衰减Ar=50dB。wp=0.2*pi;wr=0.4*pi;trwidth=wr-wp;%过渡带宽度N=ceil(6.64*pi/trwidth)+1;%滤波器的长度n=0:1:N-1;wc=(wr+wp)/2;hd=ideal_lp(wc,N);w_…

低通滤波器的设计

设计低通滤波器的要求:

设低通滤波器通带截止频率为ωp=0.2π,阻带截止频率为ωs=0.4π,通带波纹Ag=0.5dB,最小阻带衰减Ar=50dB。

wp=0.2*pi;wr=0.4*pi;

trwidth=wr-wp; %过渡带宽度

N=ceil(6.64*pi/trwidth)+1; %滤波器的长度

n=0:1:N-1;

wc=(wr+wp)/2;

hd=ideal_lp(wc,N);

w_ham=(hamming(N))’;

h=hd.*w_ham;

[db,mag,pha,grd,w]=freqz_m(h,[1]);

delta_w=2*pi/1000;

Ap=-(min(db(1:1:wp/delta_w+1)));

Ar=-round(max(db(wr/delta_w+1:1:501)));

subplot(221);stem(n,hd);title(‘理想单位脉冲响应hd(n)’)

subplot(222);plot(n,w_ham);title(‘海明窗w(n)’)

subplot(223);stem(n,h);title(‘实际单位脉冲响应h(n)’)

subplot(224);plot(w/pi,db);title(‘幅度响应(dB)’)

子程序:(1)function hd=ideal_lp(~,~)

%Ideal Lowpass filter computation

%[hd]=ideal_lp(wc,N)

% hd=ideal impulse response between 0 to N-1

% wc=cutoff frequency in radians

% N=length of the ideal filter

%

wp=0.2*pi;wr=0.4*pi;

tr_width=wr-wp;

N=ceil(6.64*pi/tr_width)+1; wc=(wr+wp)/2;

alpha=(N-1)/2;

n=0:1:(N-1);

m=n-alpha+eps;

hd=sin(wc*m)./(pi*m);

(2)function [db,mag,pha,grd,w] = freqz_m(~,~)

% Modified version of freqz subroutine

% ————————————

% [db,mag,pha,grd,w] = freqz_m(h,[1]);

% db = Relative magnitude in dB computed over 0 to pi radians

% mag = absolute magnitude computed over 0 to pi radians

% pha = Phase response in radians over 0 to pi radians

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/203658.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长

相关推荐

  • Java web的简单介绍

    Java web的简单介绍

    2021年10月3日
  • 让一个虚拟空间跑两个Asp.Net网站

    让一个虚拟空间跑两个Asp.Net网站

    2021年7月24日
  • java保留两位小数输出

    java保留两位小数输出例如:运算结果输出-40-40.0066.66666.66学过c语言的人,一看到保留小数点后两位,第一时间可能就想到:printf(”%.2f”,x);其实在java语言中和c语言类似:System.out.print(”%.2f”,x);注意:格式化输出用的是System.out.print();而不是System.out.println();原创…

    2022年7月9日
  • 计算机科学与技术现状分析_信息科学与计算机科学的区别

    计算机科学与技术现状分析_信息科学与计算机科学的区别摘要:在这个科技突飞猛进发展的时代,计算机网络已经家喻户晓,在日常生活中也起着不可忽视的作用,计算机的发展提高了人们的生活质量,加快了信息的传播,现如今,各个国家都比较重视计算机科学与技术的发展,使计算机科学与技术在全国综合国力竞争的作用逐渐加大。对于这种情况,加快计算机科学与技术的发展,不但有利于人们更快捷地了解如今的发展趋势和历史,且还推动计算机科学与技术的进步,方便人们的生活。本文首先阐述了…

    2022年10月20日
  • Readprocessmemory使用方法

    Readprocessmemory使用方法函数功能:该函数从指定的进程中读入内存信息,被读取的区域必须具有訪问权限。函数原型:BOOLReadProcessMemory(HANDLEhProcess,LPCVOIDlpBaseAddre

    2022年7月3日
  • ubuntu如何杀死进程「建议收藏」

    ubuntu如何杀死进程「建议收藏」一、得到所有进程先用命令查询出所有进程ps-ef二、杀死进程我们使用ps-ef命令之后,就会得到一些列进程信息,有进程pid什么的,如果你要杀死莫个进程的话,直接使用命令killpid

    2022年9月21日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号