matlab双线性z变换法设计数字低通滤波器
matlab双线性z变换法设计数字低通滤波器
- 双线性z变换法利用了正切函数的非线性特点,将整个jΩ轴压缩到了单位圆的一周上。
- 低通:
clear;
close all;
clc;fp=100;fs=300;Fs=1000;
rp=3;rs=20;
% 3db,20db
wp=2*pi*fp/Fs;% 2Pi - Fs —> 100hz - 0.1Fs*2Pi=0.2Pi
ws=2*pi*fs/Fs;
Fs=Fs/Fs; % let Fs=1
% Firstly to finish frequency prewarping ;
wap=tan(wp/2);was=tan(ws/2); %求Ωp,Ωs
[n,wn]=buttord(wap,was,rp,rs,’s’) %n:滤波器阶数, wn:buttord算出的自然截至频率,一般>wp
% Note: ‘s’!
[z,p,k]=buttap(n); %极点,零点,增益
[bp,ap]=zp2tf(z,p,k) %G(p)的分子,分母多项式系数 G(p)=1/p^2+√(n)*p+1
[bs,as]=lp2lp(bp,ap,wap) %G(s)=G(p)|p=s/Ωp
% Note: s=(2/Ts)(z-1)/(z+1);Ts=1,that is 2fs=1,fs=0.5;
[bz,az]=bilinear(bs,as,Fs/2) %H(z) = G(s)|s=z-1/z+1
[h,w]=freqz(bz,az,256,Fs*1000);
plot(w,abs(h));grid on;
- 带通
clear;
close all;
clc;fp=[300 400];fs=[200 500];
rp=3;rs=18;
Fs=2000;
wp=fp*2*pi/Fs;
ws=fs*2*pi/Fs;
%
% Firstly to finish frequency prewarping;
wap=2*Fs*tan(wp./2)
was=2*Fs*tan(ws./2);
[n,wn]=buttord(wap,was,rp,rs,’s’);
% Note: ‘s’!
[z,p,k]=buttap(n);
[bp,ap]=zp2tf(z,p,k) %低通转移函数G(p)
%
bw=wap(2)-wap(1) %通带带宽
w0=sqrt(wap(1)*wap(2)) %通带中心频率
[bs,as]=lp2bp(bp,ap,w0,bw) %H(s)=G(p)|s^2+wp(1)wp(2) / s(wp(2)-wp(1))
%{
[h1,w1]=freqs(bp,ap);
figure(1);
plot(w1,abs(h1));grid;
ylabel(’ lowpass G(p)’)
%}
w2=[0:Fs/2-1]*2*pi;
h2=freqs(bs,as,w2);
% Note: z=(2/Ts)(z-1)/(z+1);
[bz1,az1]=bilinear(bs,as,Fs) % H(z) = G(p)|p=(z-1)^2+w0(z+1)^2 / bw(z^2-1)
[h3,w3]=freqz(bz1,az1,1000,Fs);
figure();
plot(w2/2/pi,20*log10(abs(h2)),w3,20*log10(abs(h3)));grid;
ylabel(‘Bandpass AF and DF’)
xlabel(’ Hz’)
matlab双线性z变换法设计数字低通滤波器相关推荐
- matlab求双线性变换法,[Matlab]双线性变换法设计数字低通滤波器
测试代码: %%****bin_lp.m*******************%% %% 使用双线性变换法设计低通滤波器 %% 2018年6月13日 14:27:37 %% author:Alimy ...
- [Matlab]双线性变换法设计数字低通滤波器
测试代码: %%****bin_lp.m*******************%% %% 使用双线性变换法设计低通滤波器 %% 2018年6月13日 14:27:37 %% author:Alimyc ...
- matlab中低通滤波器,设计数字低通滤波器(用matlab实现)
DSP设计滤波器报告 姓名:张胜男 班级:07级电信(1)班 学号: 一低通滤波器的设计 (一)实验目的:掌握IIR数字低通滤波器的设计方法. (二)实验原理: 1.滤波器的分类 滤波器分两大类:经典 ...
- matlab窗函数带通滤波器,Matlab结合窗函数法设计数字带通FIR滤波器
Matlab结合窗函数法设计数字带通FIR滤波器 课程设计任务书学生姓名: 专业班级: 通信工程 指导教师: 工作单位: 信息工程学院 题 目:利用 Matlab 仿真软件系统结合窗函数法设计一个数字 ...
- 计算机学院乔丽红,用巴特莱特窗函数法设计数字FIR带通滤波器dsp课程设计.doc...
课 程 设 计 课程设计名称:数字信号处理课程设计 专 业 班 级 : 电信 学 生 姓 名 : 学 号 : 指 导 教 师 : 乔丽红 课程设计时间: 6.16-6.20 电子信息工程 专业课程设计 ...
- matlab求z变换的tat,用matlab求z变换感悟
如何用matlab实现Z变换 答:h = tf([1 0] , [1 1 1]); zh = c2d(h, 0. 00005,'zoh') [num den] = tfdata(zh, 'v') [z ...
- [Matlab]双线性变换法设计数字带通滤波器
测试代码: %%****bin_bp.m*******************%% %% 使用双线性变换法设计带通滤波器 %% 2018年6月13日 16:30:34 %% author:Alimyc ...
- matlab 差分方程z变换,[2018年最新整理]差分方程的Z变换解.ppt
[2018年最新整理]差分方程的Z变换解 实验24 差分方程的Z变换解 实验目的 学习使用Matlab的符号运算Z变换和反Z变换方法.以及反Z变换中的部分分式展开法.加深对Z变换的理解. 学习用Mat ...
- 【 MATLAB 】z 变换中的卷积与解卷积
关于卷积的博文,之前也写过几篇: [ MATLAB ]conv 函数介绍(卷积和多项式乘法) [ MATLAB ]两个序列的卷积和运算的MATLAB实现(1) [ MATLAB ]两个序列的卷积和运算 ...
最新文章
- matplotlib 散点图和折线图画在一起_使用matplotlib.pyplot画折线图
- Rosalind: 兔子与递归
- 比特币分叉两年记:聊聊当年为什么要分叉?
- python和c哪个好学-零基础学C好还是python?
- spring cloud教程之使用spring boot创建一个应用
- Android细节问题总结(一)
- PHP去除换行符的方法小结(PHP_EOL变量的使用)
- 前端进阶 -css的弱化与js的强化(11)
- 报错:The method xxxof type xxx must override or implement a supertype method
- C的无符号数据类型int,short,byte 转为 Java对应的数据long,char,short
- 《Python深度学习》第四章的实验结果图汇总
- 学一下Unix/C啊
- JavaFX技巧20:有很多需要展示的地方吗? 使用画布!
- [css] 如何使用CSS3的属性设置模拟边框跟border效果一样?
- SqlServer命名规范
- 马蜂窝与滴滴联合发起:“旅游+交通”优化旅客出行方案
- 简单测试.NET开源的PDF文档生成器QuestPDF
- 用python获取某年日历表
- java实现捕鱼达人
- 江苏赛区|2021年数学建模国赛江苏赛区获奖名单
热门文章
- 详解如何将 Android 手机投屏在 Ubuntu 上
- 大数据+决策人挖掘+邮件推广+whatapp助手=3个月出50W货值
- 【MQ读书笔记之RabbitMQ】RabbitMQ消息队列面试题
- Google C++ 编程风格指南:注释
- 郑宇:多源数据融合与时空数据挖掘(转载)
- BurpSuite pro v2020.1 最新版本,看到这些新功能后我心动了
- 血液透析滤过原理的系统性论述
- 当前计算机销售排名前10,中国电脑排行榜前十名 联想销量世界前列很是热销
- Flask 视图,模板,蓝图.
- 高中计算机教案范文,高中数学教案范文精选