离散时间信号的分析(数字信号处理实验1-2)

news/2024/6/29 12:17:59 标签: 信号处理, matlab

前言:该系列实验均使用matlab完成,实验课程为《数字信号处理
在这里插入图片描述

文章目录

  • 一.题目
  • 二.实验目的
  • 三.实验仪器
  • 四.实验原理
        • 实验所用的matlab函数解析
        • 离散时间信号实验原理:
  • 五.实验步骤
  • 六.实验代码及实验结果
    • 完整代码
        • 1.线性卷积代码
        • 2.循环卷积运算代码
  • 七.实验结论及分析讨论

一.题目

已知序列x[k]={1,2,3.4},y[k]={-1,1,2,3},试计算序列x[k]与yk]的线性卷积,并验证循环卷积与线性卷积的结果相同时的条件。

二.实验目的

1.掌握卷积的原理;

三.实验仪器

计算机,MATLAB软件

四.实验原理

matlab_15">实验所用的matlab函数解析
  1. sound: 播放声音
    (1)sound(Y,Fs): 将向量Y(具有采样频率FS)中的信号发送到支持声音的平台上的扬声器。
    (2)sound(Y):以默认采样率播放声音
    (3)sound(Y,Fs,BITS):使用样本播放声音
    2.num2str: 将数值转换为字符串
    3.disp: 用来展示变量的内容,可以是字符串,矩阵,结构体。
  2. conv: 卷积函数,用于两个信号的卷积
    5.subplot:将多图画到一个平面上的工具。
离散时间信号实验原理:

1.线性卷积
线性时不变系统输入、输出间的关系为:当系统输入序列为x(n) ,系统的单位脉冲响应为h(n),输出序列为y(n),则系统输出为:
在这里插入图片描述
上式称为线性卷积

2.循环卷积
在这里插入图片描述

上式称为x1(n)和x2(n)的循环卷积

3.循环卷积与线性卷积的关系

在这里插入图片描述

五.实验步骤

  1. 已知序列x[k]={1,2,3,4},y[k]={-1,1,2,3},试计算序列x[k]与y[k]的线性卷积,并验证循环卷积与线性卷积的结果相同时的条件。

六.实验代码及实验结果

完整代码

1.线性卷积代码
matlab">%线性卷积的运算
x = [1,2,3,4]       %创建序列x[k]={1,2,3,4},k从0开始
y = [-1,1,2,3]      %创建序列y[k]={-1,1,2,3},k从0开始
h = conv(x,y)       %序列x[k]与y[k]卷积,结果记录为h
subplot(2,2,1);stem(k,x);title('x[k]'); %绘制序列x[k]图像
subplot(2,2,2);stem(k,y);title('y[k]'); %绘制序列y[k]图像
subplot(2,2,3);stem(k,h);title('h[k]'); %绘制线性卷积结果图像

线性卷积运行结果:
在这里插入图片描述
在这里插入图片描述

2.循环卷积运算代码
matlab">%循环卷积的运算
%cconv 函数用于计算两个有限长序列的循环卷积
%x:长度为N的有限长序列,N = 4
%y:长度为M的有限长序列,M = 4
%L:循环卷积的长度
%l:线性卷积输出序列长度l = N+M-1=7
%h:x与y的循环卷积结果,L>=max(N,M)
x = [1,2,3,4]       %创建序列x[k]={1,2,3,4},k从0开始
y = [-1,1,2,3]      %创建序列y[k]={-1,1,2,3},k从0开始
L = 9              %设置循环卷积的长度
h = cconv(x,y,L)  %计算循环卷积

循环卷积运行结果:

  • 当L<N+M-1时(程序代码中修改L=6)
    在这里插入图片描述
  • 当L=N+M-1时(程序代码中修改L=7)
    在这里插入图片描述
  • 当L>N+M-1时(程序代码中修改L=9)
    在这里插入图片描述
    综上验证可得:
    (1) 当L<N+M-1时,循环卷积是线性卷积长度为L的混叠;
    (2) 当L=N+M-1时,循环卷积=线性卷积;
    (3) 当L>N+M-1时,循环卷积是线性卷积末尾补L-(N+M-1)个零;

七.实验结论及分析讨论

1.在离散时间信号的分析实验中,循环卷积与线性卷积结果相同的条件是:L=N+M-1。
循环卷积与线性卷积的关系为:
(1) 当L<N+M-1时,循环卷积是线性卷积长度为L的混叠;
(2) 当L=N+M-1时,循环卷积=线性卷积;
(3) 当L>N+M-1时,循环卷积是线性卷积末尾补L-(N+M-1)个零;


http://www.niftyadmin.cn/n/5224329.html

相关文章

python炒股自动化(1),量化交易接口区别

要实现股票量化程序化自动化&#xff0c;就需要券商提供的API接口&#xff0c;重点是个人账户小散户可以申请开通&#xff0c;上手要简单&#xff0c;接口要足够全面&#xff0c;功能完善&#xff0c;首先&#xff0c;第一步就是要找对渠道和方法&#xff0c;这里我们不讨论量化…

Python与设计模式--模板模式

23种计模式之 前言 &#xff08;5&#xff09;单例模式、工厂模式、简单工厂模式、抽象工厂模式、建造者模式、原型模式、(7)代理模式、装饰器模式、适配器模式、门面模式、组合模式、享元模式、桥梁模式、&#xff08;11&#xff09;策略模式、责任链模式、命令模式、中介者模…

带着GPT-4V(ision)上路,自动驾驶新探索

On the Road with GPT-4V(ision): Early Explorations of Visual-Language Model on Autonomous Driving GitHub | https://github.com/PJLab-ADG/GPT4V-AD-Exploration arXiv | https://arxiv.org/abs/2311.05332 自动驾驶技术的追求取决于对感知、决策和控制系统的复杂集成。…

Linux系统安装Docker-根据官方教程教程(以Ubuntu为例)

Linux系统安装Docker-根据官方教程教程&#xff08;以Ubuntu为例&#xff09; 1. 背景介绍2. 环境配置2.1 软件环境要求2.2 软件下载2.3 文档地址2.3 必备命令工具下载 3. 安装Docker3.1 使用root用户操作后续命令3.2 卸载可能存在的旧版本 4. 安装Docker4.1 更新依赖包4.2 配置…

基于Python+requests编写的自动化测试项目-实现流程化的接口串联

框架产生目的&#xff1a;公司走的是敏捷开发模式&#xff0c;编写这种框架是为了能够满足当前这种发展模式&#xff0c;用于前后端联调之前&#xff08;后端开发完接口&#xff0c;前端还没有将业务处理完毕的时候&#xff09;以及日后回归阶段&#xff0c;方便为自己腾出学(m…

Elsevier的latex模板

1.关于Elsevier的letex模板&#xff08; version 2.3 2021-05-11)一开始直接编辑出现The key ‘stm/author/&#xff1c;options&#xff1e;‘ is unknown and 的问 LaTeX Error: The key stm/author/<options> is unknown and is being ignored. 关于Elsevier的letex…

GUI加分游戏

需求目标 这个简单的游戏窗口包含一个得分标签和一个按钮。每次点击按钮时&#xff0c;得分增加1&#xff0c;并更新得分标签的显示。 效果 源码 /*** author lwh* date 2023/11/28* description 这个简单的游戏窗口包含一个得分标签和一个按钮。每次点击按钮时&#xff0c;…

webpack项目工程初始化

一、初始化项目 默认系统已经安装node //初始化 pnpm init//安装webpack pnpm i -D webpack webpack-cli 新建一个index.html的入口文件 新建一个src文件存放js代码&#xff0c;src里面新建一个index.js package.josn配置打包命令 {"name": "webpack-cs&q…