《数字信号处理》学习04-离散时间系统中的线性时不变系统

2024-09-05 01:28

本文主要是介绍《数字信号处理》学习04-离散时间系统中的线性时不变系统,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

一,系统及离散时间系统 

 二,离散时间系统中的线性时不变系统

1,线性系统

 1) 可加性

 2) 比例性(齐次性)

3)叠加原理(叠加性质)

 2,时不变系统(移不变系统)


通过前几篇文章的学习,此时我对序列的相关概念和运算已经有所掌握,接下来我将开始学习新的概念“离散时间系统中的线性时不变系统”,

一,系统及离散时间系统 

首先需要知道系统的概念,在《信号与系统》中,系统是一个具有特定功能的整体,由相互关联的事物组合而成。

由于需要处理的信号基本是离散时间信号(既序列),因此,在这篇文章中我着重学习用于处理序列的离散时间系统。

离散时间系统是指其输入和输出信号都是离散的时间序列。

离散时间系统可以将输入序列 x(n) 变换成输出序列 y(n) ,因此可以用  T\left [ \cdot \right ] 表示这种系统,其中:

  1. T :transform 变换,输入序列 x(n) 变换成输出序列 y(n) 。
  2. 中间的点号  \cdot  用来表示输入的序列
  3. 例如:“将输入序列 x(n) 变换成输出序列 y(n)”就可以用  y(n)=T\left [ x(n) \right ]  表示。
    输出序列一般 用 英文字母 y 指代,y 是 yield  的缩写,yield 有产出,产生,产量的意思。
  4. 不同的离散时间系统会对 输入序列 x(n) 做不同的操作,例如,只在输入信号x(n)前面乘上系数n 的离散时间系统 :y(n)=T\left [ x(n) \right ]=nx(n),或者是将输入信号x(n)取平方的离散时间系统:y(n)=T\left [ x(n) \right ]=x^{2}(n)

需要注意的是:“将输入序列 x(n) 变换成输出序列 y(n)” 这是一种运算,因此,离散时间系统就是一种运算。可以用下图表示:

 二,离散时间系统中的线性时不变系统

 线性时不变系统由两部分组成:线性系统+时不变系统。

先学习线性系统。

1,线性系统

 首先需要知道什么是线性,在大学里面会有《高等数学》课,涉及到线性齐次(或非齐次)微分方程,还有《线性代数》课,可以看到,熟知线性的概念很重要。

线性:就是具有线的特性,而这个线就是直线,在列直线方程时都是使用一次方程,因此,“线性” 跟“一次”挂钩,在运算时,所涉及到的变量都必须是一次项,如果有二次及以上次数的项出现,那么就是非线性。

在《数字信号处理》中,“线性” 一词出现在 “线性系统” 中,当一个系统满足叠加原理(或叠加性质),就是一个线性系统。

线性系统的叠加原理包括比例性和可加性这两个特性。

 假设有两个不同的输入序列 x_{1}(n)  和  x_{2}(n)  分别作用于 离散时间系统  T\left [ \cdot \right ] ,得到离散时间系统 T\left [ \cdot \right ] 分别 对这两个输入序列的响应 序列 T\left [ x_{1}(n) \right ]  和  T\left [ x_{2}(n) \right ],令y_{1}(n)=T\left [ x_{1}(n) \right ],y_{2}(n)=T\left [ x_{2}(n) \right ] 

 1) 可加性

将两个响应序列相加:T\left [ x_{1}(n) \right ]+T\left [ x_{2}(n) \right ]=y_{1}(n)+y_{2}(n)

 现在,让这两个不同的序列 x_{1}(n)  和  x_{2}(n)  同时作用于离散时间系统  T\left [ \cdot \right ] ,得到离散时间系统 T\left [ \cdot \right ]  同时对这两个输入序列的响应序列  T\left [ x_{1}(n)+ x_{2}(n)\right ] ,令

T\left [ x_{1}(n)+ x_{2}(n)\right ]=y(n)

两个不同的输入序列 x_{1}(n)  和  x_{2}(n) ,不管是分别作用于 离散时间系统  T\left [ \cdot \right ] 还是同时作用于 离散时间系统  T\left [ \cdot \right ] ,相加后的响应序列相等,则这个系统满足可加性:   T\left [ x_{1}(n)+ x_{2}(n)\right ]=y(n)=y_{1}(n)+y_{2}(n)

 2) 比例性(齐次性)

 将两个不同的输入序列 x_{1}(n)  和  x_{2}(n) 分别乘上不同系数 a_{1},a_{2} 并作用于离散时间系统T\left [ \cdot \right ] 

如果得到的响应序列满足  T\left [ a_{1}x_{1}(n)\right ]=a_{1}y_{1}(n),T\left [ a_{2}x_{2}(n)\right ]=a_{2}y_{2}(n) ,则这个系统满足比例性(齐次性)

3)叠加原理(叠加性质)

将系统满足 可加性 及 比例性 的公式合二为一,得到线性系统满足叠加原理的公式,如下👇 

T\left [ a_{1}x_{1}(n)+ a_{2}x_{2}(n)\right ]=a_{1}y_{1}(n)+a_{2}y_{2}(n)

上面的公式是以两个输入序列为例,列出的公式,但是对于一个线性系统来说,可以有两个及两个以上的输入序列作用于该线性系统,假设有N个输入序列作用于线性系统,则响应的也会有N个响应序列输出,公式可以写成如下形式:

T\left [ \sum_{i=1}^{N}a_{i}x_{i}(n) \right ]= \sum_{i=1}^{N}a_{i}y_{i}(n)

 线性系统肯定满足:“零输入产生零输出”(当输入序列x(n)的序列值全为0时,0乘任何数都为0,并且,多个0相加的结果也是0,所以响应序列y(n)的序列值也全为0)

 知道了线性系统的相关概念,我现在可以开始理论和实践相结合,做一道题:

 由题目可以看到,输入序列x(n)作用于的离散时间系统T\left [ \cdot \right ],是先将输入序列 x(n) 乘上系数2,接着将序列 2x(n) 上移5个时间单位,最后得到响应序列y(n)

需要注意的是,在做题的过程中,要一直牢记:离散时间系统是对 输入序列 x(n) 的响应

 个人解:先运用可加性的公式判断该系统是否满足可加性

T\left [ x_{1}(n) \right ]=2x_{1}(n)+5=y_{1}(n)

T\left [ x_{2}(n) \right ]=2x_{2}(n)+5=y_{2}(n) 

 T\left [ x_{1}(n)+x_{2}(n) \right ]=2(x_{1}(n)+x_{2}(n))+5=2x_{1}(n)+2x_{2}(n)+5=y_{3}(n)

由于y_{1}(n)+y_{2}(n)=2x_{1}(n)+2x_{2}(n)+10,而 y_{3}(n)=2x_{1}(n)+2x_{2}(n)+5

 所以y_{1}(n)+y_{2}(n)\neq y_{3}(n),因此该系统不满足可加性,不是线性系统,是非线性系统。

书上解:

 2,时不变系统(移不变系统)

时不变系统是指,无论输入序列x(n)在时间上何时作用于离散时间系统 T[\cdot ],系统的响应 y(n) 仅与输入信号x(n)的形状和时间延迟有关,而与输入信号x(n)的实际时间无关。换句话说,如果输入信号 x(n)的时间延迟了n_{0}​ 个单位时间,则系统的输出  y(n)也会相应地延迟n_{0}个单位时间,即 y(n)=T\left [x(n-m) \right ]=y(n-m)。 

 如果一个系统的输入输出满足式 T\left [x(n-m) \right ]=y(n-m),那么它就是一个时不变系统。

 开始上题👇

 解:让乘了系数 n 的输入序列 x(n) 作用于延时m个单位时间的离散时间系统,即T\left [ x(n-m) \right ]=nx(n-m)

接着也让响应序列 y(n) 延时m个单位时间,得到 y(n-m)=(n-m)x(n-m)

可以看到,T\left [x(n-m) \right ]\neq y(n-m),因此该系统是时变系统。

书上的解答:

 如果一个系统既是线性系统,又是时不变系统,那么就可以称这个系统为线性时不变系统(LTI:linear  线性的  time 时间的  invariable不变的)

有问题请在评论区留言或者是私信我,回复时间不超过一天。 

这篇关于《数字信号处理》学习04-离散时间系统中的线性时不变系统的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1137574

相关文章

C++ 函数 strftime 和时间格式示例详解

《C++函数strftime和时间格式示例详解》strftime是C/C++标准库中用于格式化日期和时间的函数,定义在ctime头文件中,它将tm结构体中的时间信息转换为指定格式的字符串,是处理... 目录C++ 函数 strftipythonme 详解一、函数原型二、功能描述三、格式字符串说明四、返回值五

从基础到进阶详解Pandas时间数据处理指南

《从基础到进阶详解Pandas时间数据处理指南》Pandas构建了完整的时间数据处理生态,核心由四个基础类构成,Timestamp,DatetimeIndex,Period和Timedelta,下面我... 目录1. 时间数据类型与基础操作1.1 核心时间对象体系1.2 时间数据生成技巧2. 时间索引与数据

基于Python实现一个简单的题库与在线考试系统

《基于Python实现一个简单的题库与在线考试系统》在当今信息化教育时代,在线学习与考试系统已成为教育技术领域的重要组成部分,本文就来介绍一下如何使用Python和PyQt5框架开发一个名为白泽题库系... 目录概述功能特点界面展示系统架构设计类结构图Excel题库填写格式模板题库题目填写格式表核心数据结构

Go学习记录之runtime包深入解析

《Go学习记录之runtime包深入解析》Go语言runtime包管理运行时环境,涵盖goroutine调度、内存分配、垃圾回收、类型信息等核心功能,:本文主要介绍Go学习记录之runtime包的... 目录前言:一、runtime包内容学习1、作用:① Goroutine和并发控制:② 垃圾回收:③ 栈和

Linux系统中的firewall-offline-cmd详解(收藏版)

《Linux系统中的firewall-offline-cmd详解(收藏版)》firewall-offline-cmd是firewalld的一个命令行工具,专门设计用于在没有运行firewalld服务的... 目录主要用途基本语法选项1. 状态管理2. 区域管理3. 服务管理4. 端口管理5. ICMP 阻断

Android学习总结之Java和kotlin区别超详细分析

《Android学习总结之Java和kotlin区别超详细分析》Java和Kotlin都是用于Android开发的编程语言,它们各自具有独特的特点和优势,:本文主要介绍Android学习总结之Ja... 目录一、空安全机制真题 1:Kotlin 如何解决 Java 的 NullPointerExceptio

Windows 系统下 Nginx 的配置步骤详解

《Windows系统下Nginx的配置步骤详解》Nginx是一款功能强大的软件,在互联网领域有广泛应用,简单来说,它就像一个聪明的交通指挥员,能让网站运行得更高效、更稳定,:本文主要介绍W... 目录一、为什么要用 Nginx二、Windows 系统下 Nginx 的配置步骤1. 下载 Nginx2. 解压

如何确定哪些软件是Mac系统自带的? Mac系统内置应用查看技巧

《如何确定哪些软件是Mac系统自带的?Mac系统内置应用查看技巧》如何确定哪些软件是Mac系统自带的?mac系统中有很多自带的应用,想要看看哪些是系统自带,该怎么查看呢?下面我们就来看看Mac系统内... 在MAC电脑上,可以使用以下方法来确定哪些软件是系统自带的:1.应用程序文件夹打开应用程序文件夹

windows系统上如何进行maven安装和配置方式

《windows系统上如何进行maven安装和配置方式》:本文主要介绍windows系统上如何进行maven安装和配置方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不... 目录1. Maven 简介2. maven的下载与安装2.1 下载 Maven2.2 Maven安装2.

使用Python实现Windows系统垃圾清理

《使用Python实现Windows系统垃圾清理》Windows自带的磁盘清理工具功能有限,无法深度清理各类垃圾文件,所以本文为大家介绍了如何使用Python+PyQt5开发一个Windows系统垃圾... 目录一、开发背景与工具概述1.1 为什么需要专业清理工具1.2 工具设计理念二、工具核心功能解析2.