• 1. Introduction
  • 1.1. 周期信号
  • 1.1.1. 连续信号周期
  • 1.1.2. 离散信号周期
  • 1.1.3. 信号的 Python 表示与绘图
  • 1.2. 信号分类
  • 1.2.1. 能量信号
  • 1.2.2. 功率信号
  • 1.2.3. 因果信号
  • 1.2.4. 反因果信号
  • 1.2.5. 其他类型
  • 1.2.6. Remark
  • 1.3. 冲激函数
  • 1.3.1. 单位冲激函数 Dirac delta function
  • 1.3.2. 阶跃函数
  • 1.3.3. 广义函数定义
  • 1.3.4. 取样性质
  • 1.3.5. 导数
  • 1.3.6. 尺度变化
  • 1.4. LTI 连续系统
  • 1.4.1. 微分方程的经典解法
  • 1.4.2. 初始值
  • 1.4.3. 响应
  • 1.4.4. Python 求解系统的响应
  • 1.4.5. 冲激响应
  • 1.4.6. 阶跃响应
  • 1.4.7. Python 冲激响应与阶跃响应
  • 1.4.8. 卷积积分 Convolution
  • 1.4.9. Python 求卷积积分
  • 1.4.10. 连续系统的算子 P
  • 1.5. 差分方程
  • 1.5.1. 定义
  • 1.5.2. 经典解法
  • 1.5.3. 初始值
  • 1.5.4. 响应
  • 1.5.5. Python 求解离散系统的零状态响应
  • 1.5.6. 单位脉冲序列
  • 1.5.7. 单位阶跃序列
  • 1.5.8. 单位脉冲响应
  • 1.5.9. 单位阶跃响应
  • 1.5.10. Python 求解单位脉冲响应
  • 1.5.11. 卷积和
  • 1.5.12. Python 求卷积和
  • 1.5.13. 差分算子 E
  • 信号与系统(Python) 学习笔记摘录 (2) 傅里叶 Fourier


1. Introduction


1.1. 周期信号

  • Period Signal


1.1.1. 连续信号周期

  • 连续周期信号 信号与系统基于Python python 信号与系统_Python, 周期为 信号与系统基于Python python 信号与系统_信号与系统基于Python_02, 满足
    信号与系统基于Python python 信号与系统_傅立叶分析_03
  • 典型周期连续信号: 余弦信号 信号与系统基于Python python 信号与系统_信号处理_04 周期为 信号与系统基于Python python 信号与系统_信号处理_05


1.1.2. 离散信号周期

  • 离散周期信号 信号与系统基于Python python 信号与系统_Python_06, 周期为 信号与系统基于Python python 信号与系统_傅立叶分析_07, 满足
    信号与系统基于Python python 信号与系统_Python_08


1.1.3. 信号的 Python 表示与绘图

  • 连续信号 信号与系统基于Python python 信号与系统_信号处理_09
# 导入 需要的 library 库  
    import numpy as np # 科学计算
    import matplotlib.pyplot as plt # 画图
    import scipy.signal as sg # 导入 scipy 的 signal 库 命名为 sg

    a,b = 0.8,5
    t = np.linspace(0,5,100) # 另一种表达式 t = np.mgrid[0:5:0.01]
    y = b*np.exp(-a*t)*np.sin(np.pi*t)
    plt.xlabel('time')
    plt.ylabel('Y')
    plt.plot(t,y)
    plt.grid(True)
    plt.show()

信号与系统基于Python python 信号与系统_信号与系统基于Python_10



1.2. 信号分类

  • 将信号 信号与系统基于Python python 信号与系统_Python 施加于 信号与系统基于Python python 信号与系统_傅立叶分析_12 电阻上, 所消耗的瞬时功率为 信号与系统基于Python python 信号与系统_信号处理_13, 在区间 信号与系统基于Python python 信号与系统_信号处理_14能量平均功率定义为
    信号与系统基于Python python 信号与系统_信号处理_15
    信号与系统基于Python python 信号与系统_Python_16


1.2.1. 能量信号

  • 能量有限信号: 信号的能量 信号与系统基于Python python 信号与系统_python_17 , 简称 能量信号 , 此时 信号与系统基于Python python 信号与系统_信号与系统基于Python_18.
  • 离散: 信号与系统基于Python python 信号与系统_Python_19


1.2.2. 功率信号

  • 功率有限信号: 信号的功率 信号与系统基于Python python 信号与系统_信号处理_20 , 简称 功率信号 , 此时 信号与系统基于Python python 信号与系统_python_21.
  • 离散: 信号与系统基于Python python 信号与系统_信号处理_22


1.2.3. 因果信号

  • 因果信号: 信号与系统基于Python python 信号与系统_信号处理_23 的信号
  • 例如: 阶跃信号


1.2.4. 反因果信号

  • 反因果信号: 信号与系统基于Python python 信号与系统_信号与系统基于Python_24


1.2.5. 其他类型

  • 一维信号, 多维信号; 实信号,复信号; 左信号, 右信号。。。。。。


1.2.6. Remark

  1. 时限信号为能量信号
  2. 周期信号为功率信号
  3. 非周期信号 可能为能量也可能为功率信号
  4. 信号与系统基于Python python 信号与系统_python_25


1.3. 冲激函数

信号与系统基于Python python 信号与系统_python_26


1.3.1. 单位冲激函数 Dirac delta function

  • 单位冲激函数: 奇异函数, 强度极大, 作用时间极短的物理量的理想化模型
    信号与系统基于Python python 信号与系统_傅立叶分析_27
  • aka Dirac delta function
  • 高度无穷大, 宽度无穷小, 面积为 1 的对称窄脉冲


1.3.2. 阶跃函数

  • 阶跃函数:
    信号与系统基于Python python 信号与系统_python_28
  • 积分: 信号与系统基于Python python 信号与系统_Python_29
  • 与 冲激函数 关联:
  • 信号与系统基于Python python 信号与系统_python_30
  • 信号与系统基于Python python 信号与系统_python_31


1.3.3. 广义函数定义

  • Dirac Delta function 广义函数定义:
    信号与系统基于Python python 信号与系统_Python_32
  • 冲激函数 信号与系统基于Python python 信号与系统_python_33 作用于检验函数 信号与系统基于Python python 信号与系统_Python_34 的结果是赋值为 信号与系统基于Python python 信号与系统_Python_35, 称为 冲激函数的取样性质。
  • 例如:
  • 高斯函数 信号与系统基于Python python 信号与系统_信号处理_36
  • 取样函数 信号与系统基于Python python 信号与系统_信号处理_37


1.3.4. 取样性质

  • Dirac Delta function 取样性质:
    信号与系统基于Python python 信号与系统_信号处理_38
    信号与系统基于Python python 信号与系统_信号处理_39
  • Notice: 积分区间要包含 信号与系统基于Python python 信号与系统_傅立叶分析_40


1.3.5. 导数

  • Dirac Delta function 导数:
  • 冲激偶 信号与系统基于Python python 信号与系统_信号与系统基于Python_41:
    信号与系统基于Python python 信号与系统_python_42
    信号与系统基于Python python 信号与系统_Python_43
    信号与系统基于Python python 信号与系统_python_44
    信号与系统基于Python python 信号与系统_信号与系统基于Python_45


1.3.6. 尺度变化

  • Dirac Delta function 尺度变化:
    信号与系统基于Python python 信号与系统_信号与系统基于Python_46
    信号与系统基于Python python 信号与系统_Python_47


1.4. LTI 连续系统

信号与系统基于Python python 信号与系统_Python_48


1.4.1. 微分方程的经典解法

信号与系统基于Python python 信号与系统_Python_49

  • 经典解法: 信号与系统基于Python python 信号与系统_傅立叶分析_50
  • 信号与系统基于Python python 信号与系统_傅立叶分析_51 完全解
  • 信号与系统基于Python python 信号与系统_傅立叶分析_52 齐次解 homogeneous solution
  • 信号与系统基于Python python 信号与系统_python_53 特解
  • 特征根: eigenvalue 特征值
    信号与系统基于Python python 信号与系统_信号处理_54

信号与系统基于Python python 信号与系统_信号与系统基于Python_55


1.4.2. 初始值

  • 初始值: 是n阶系统在 信号与系统基于Python python 信号与系统_Python_56 时接入激励, 其响应在 信号与系统基于Python python 信号与系统_信号与系统基于Python_57 时刻的值, 即 信号与系统基于Python python 信号与系统_信号与系统基于Python_58
  • 初始状态: 是系统在激励尚未接入的 信号与系统基于Python python 信号与系统_信号处理_59 时刻的响应值 信号与系统基于Python python 信号与系统_Python_60, 该值反映了系统的历史情况,且与激励无关。


1.4.3. 响应

信号与系统基于Python python 信号与系统_傅立叶分析_61

  • 零输入响应: 信号与系统基于Python python 信号与系统_python_62
  • 零状态响应: 信号与系统基于Python python 信号与系统_傅立叶分析_63
  • 信号与系统基于Python python 信号与系统_python_64
  • 响应分类:
  • 固有响应:系统固有频率 或叫自由响应
  • 强迫响应:与激励函数有关
  • 暂态响应:随时间增长而消失
  • 稳态响应:通常为阶跃函数和周期


1.4.4. Python 求解系统的响应

  • 系统的微分方程为
    信号与系统基于Python python 信号与系统_傅立叶分析_65
  • 信号与系统基于Python python 信号与系统_Python_66 时,接入激励 信号与系统基于Python python 信号与系统_信号处理_67, 求零状态响应
  • 可得 信号与系统基于Python python 信号与系统_信号处理_68
# 使用方程解  
    from scipy.integrate import odeint, solve_bvp, solve_ivp
    # odeint: Integrate a system of ordinary differential equations
    # solve_bvp: Solve a boundary-value problem for a system of ODEs
    # solve_ivp: Solve an initial value problem for a system of ODEs

    # 一阶微分方程组  
    def fvdp(t,y):
        '''
        来源:https://www.jianshu.com/p/ab57b600b854?utm_campaign=shakespeare
        要把y看出一个向量,y = [dy0,dy1,dy2,...]分别表示y的n阶导
        对于二阶微分方程,肯定是由0阶和1阶函数组合而成的,所以下面把y看成向量的话,y0表示最初始的函数,也就是我们要求解的函数,y1表示一阶导,对于高阶微分方程也可以以此类推
        '''
        y0, y1 = y
        ft = 10*np.sin(2*np.pi*t)
        y2 = -2*y1-77*y0+ft
        # y0是需要求解的函数,y1是一阶导
        # 返回的顺序是[一阶导, 二阶导],这就形成了一阶微分方程组
        return [y1, y2]

    y0 = [0, 0] # 初值[0,0]表示y(0)=0,y'(0)=0  
    t = np.linspace(0,5,100)
    y = odeint(fvdp, y0, t, tfirst=True) # 用 odeint 计算 y(t)
    y_ = solve_ivp(fvdp, t_span=(0,5), y0=y0, t_eval=t) # 用 solve_ivp 计算 y(t)

    # 开始绘图
    plt.subplot(211)
    y1, = plt.plot(t, y[:,0], label='y')
    y1_, = plt.plot(t,y[:,1],label='y‘')            
    plt.legend(handles=[y1,y1_], loc='upper right')
    plt.grid(True)

    plt.subplot(212)
    y2, = plt.plot(y_.t, y_.y[0,:],'g--',label='y(0)')
    y2_, = plt.plot(y_.t, y_.y[1,:],'r-',label='y(1)')
    plt.legend(handles=[y2,y2_], loc='upper right')
    plt.grid(True)

    plt.show()

信号与系统基于Python python 信号与系统_信号与系统基于Python_69

# 用已有库的方法解 sg is scipy.signal
    sys = sg.lti([1],[1, 2, 77]) # 方程里的系数  
    ft = 10*np.sin(2*np.pi*t)
    _,y,_ = sg.lsim(sys,ft,T=t)
    # 开始绘图
    plt.plot(t,y,label='simple way') 
    plt.grid(True)
    plt.show()

信号与系统基于Python python 信号与系统_信号与系统基于Python_70


1.4.5. 冲激响应

  • 由单位冲激函数 信号与系统基于Python python 信号与系统_python_71 所引起的零状态响应,记为 信号与系统基于Python python 信号与系统_python_72
  • 信号与系统基于Python python 信号与系统_Python_73
  • 隐含条件:
    信号与系统基于Python python 信号与系统_傅立叶分析_74
    对二阶系统 信号与系统基于Python python 信号与系统_信号与系统基于Python_75


1.4.6. 阶跃响应

  • 由单位阶跃函数 信号与系统基于Python python 信号与系统_Python_76 所引起的零状态响应,记为 信号与系统基于Python python 信号与系统_python_77
  • 信号与系统基于Python python 信号与系统_Python_78
  • 隐含条件:
    信号与系统基于Python python 信号与系统_信号处理_79
    信号与系统基于Python python 信号与系统_信号与系统基于Python_80
  • 关联:
    信号与系统基于Python python 信号与系统_python_81
    信号与系统基于Python python 信号与系统_信号与系统基于Python_82


1.4.7. Python 冲激响应与阶跃响应

  • 求以下系统的冲激响应和阶跃响应:
    信号与系统基于Python python 信号与系统_傅立叶分析_83
sys = sg.lti([1,1],[7,4,6]) # 方程里的系数 由高次幂到低次幂  
    st, sy = sg.step2(sys)
    it, iy = sg.impulse2(sys)
    sy1, = plt.plot(st, sy, label='step')
    iy1, = plt.plot(it, iy, label='impluse')
    # 开始绘图
    plt.legend(handles=[sy1,iy1], loc='upper right')
    plt.grid(True)
    plt.show()

信号与系统基于Python python 信号与系统_python_84



1.4.8. 卷积积分 Convolution

  • 来源 信号与系统基于Python python 信号与系统_信号处理_85 , p 为脉冲
    信号与系统基于Python python 信号与系统_信号处理_86
  • 信号与系统基于Python python 信号与系统_信号与系统基于Python_87
    可得 信号与系统基于Python python 信号与系统_信号与系统基于Python_88
  • 卷积积分 信号与系统基于Python python 信号与系统_信号与系统基于Python_89
  • 定义:
  • 信号与系统基于Python python 信号与系统_信号处理_90信号与系统基于Python python 信号与系统_傅立叶分析_91 的 卷积: 信号与系统基于Python python 信号与系统_傅立叶分析_92
  • 记为 信号与系统基于Python python 信号与系统_Python_93
  • 代数性质:
  • 三定律:
  1. 交换律: 信号与系统基于Python python 信号与系统_信号处理_94
  2. 分配律: 信号与系统基于Python python 信号与系统_Python_95
  3. 结合律: 信号与系统基于Python python 信号与系统_傅立叶分析_96
  • 特性:
  • 信号与系统基于Python python 信号与系统_傅立叶分析_97
  • 信号与系统基于Python python 信号与系统_Python_98
  • 信号与系统基于Python python 信号与系统_信号与系统基于Python_99
  • 信号与系统基于Python python 信号与系统_傅立叶分析_100
  • 衍生:
  • 信号与系统基于Python python 信号与系统_傅立叶分析_101
  • 信号与系统基于Python python 信号与系统_python_102
  • 微分特性:
  • 信号与系统基于Python python 信号与系统_傅立叶分析_103
  • 信号与系统基于Python python 信号与系统_python_104
  • if 信号与系统基于Python python 信号与系统_信号处理_105
  • 常用公式汇总:
  • 信号与系统基于Python python 信号与系统_Python_106
  • 信号与系统基于Python python 信号与系统_傅立叶分析_107
  • 信号与系统基于Python python 信号与系统_信号处理_108
  • 信号与系统基于Python python 信号与系统_信号与系统基于Python_109
  • 信号与系统基于Python python 信号与系统_傅立叶分析_100
  • 信号与系统基于Python python 信号与系统_信号与系统基于Python_111
  • 信号与系统基于Python python 信号与系统_傅立叶分析_112
  • 信号与系统基于Python python 信号与系统_python_113
  • 信号与系统基于Python python 信号与系统_Python_114
  • 周期为 信号与系统基于Python python 信号与系统_信号处理_115 的周期单位冲激函数序列 信号与系统基于Python python 信号与系统_信号与系统基于Python_116 , 常称为梳状 comb 函数
  • 相关函数:
  • 雷达卷积函数:
    信号与系统基于Python python 信号与系统_Python_117
    信号与系统基于Python python 信号与系统_傅立叶分析_118
  • Normally 信号与系统基于Python python 信号与系统_信号与系统基于Python_119
  • 自相关函数:
    信号与系统基于Python python 信号与系统_信号处理_120
  • 其他:
  • 多径传输中存在失真问题, 发射机经某些物体反射产生回波现象,就算是反射信号也被采集。
    把在多条路径上 由延迟时间与衰减系数 的情况 称为混响。
    为了从 有干扰信号的回波系统中提取正常信号,可以设计逆系统进行补偿。
    信号与系统基于Python python 信号与系统_python_121
    为了保证 输出为原激励信号 信号与系统基于Python python 信号与系统_python_122 必须满足 信号与系统基于Python python 信号与系统_python_123
    信号与系统基于Python python 信号与系统_python_124 的问题 称为 解卷积反卷积
  • 自适应滤波器 AF (Adaptive Filter) 可以根据误差信号调整系数 去对消 噪声信号,使得输出信号趋近于真实信号。


1.4.9. Python 求卷积积分

  • 已知两个连续时间信号为:
    信号与系统基于Python python 信号与系统_python_125
# sg is scipy.signal
    t1 = np.array([t*0.1 for t in range(-10,31)]) # t in [-1, 3]
    f1t = np.array([2 if 0<t<10 else 0 for t in range(-10,31)])
    t2 = np.array([t*0.1 for t in range(-10,31)]) # t in [-1,3]
    f2t = np.array([t*0.1 if 0<t<20 else 0 for t in range(-10,31)]) 
    yt = sg.convolve(f1t, f2t,'full')*0.1 # 计算卷积 calculate convolution  
    t3 = np.array([t*0.1 for t in range(-20,61)]) # t in [-1+-1, 3+3]
    # 开始绘图
    plt.plot(t3, yt, label='conv')
    plt.grid(True)
    plt.show()

信号与系统基于Python python 信号与系统_傅立叶分析_126


信号与系统基于Python python 信号与系统_信号与系统基于Python_127


1.4.10. 连续系统的算子 P

  • 微分算子: 信号与系统基于Python python 信号与系统_信号与系统基于Python_128 ; 信号与系统基于Python python 信号与系统_python_129
  • 积分算子: 信号与系统基于Python python 信号与系统_信号处理_130
  • 性质:
  • 信号与系统基于Python python 信号与系统_信号与系统基于Python_131正幂 多项式可以因式分解
  • 信号与系统基于Python python 信号与系统_python_132信号与系统基于Python python 信号与系统_信号与系统基于Python_131正幂多项式,则 信号与系统基于Python python 信号与系统_Python_134
  • 微分算子方程公因子 不能随意 消去
  • 信号与系统基于Python python 信号与系统_信号与系统基于Python_135信号与系统基于Python python 信号与系统_信号与系统基于Python_131正幂多项式,
    信号与系统基于Python python 信号与系统_信号与系统基于Python_137
    信号与系统基于Python python 信号与系统_信号与系统基于Python_138
  • 传输算子:
    信号与系统基于Python python 信号与系统_python_139


1.5. 差分方程


1.5.1. 定义

  • 一阶差分:
    信号与系统基于Python python 信号与系统_信号处理_140
    信号与系统基于Python python 信号与系统_信号与系统基于Python_141
  • 线性性质:
    信号与系统基于Python python 信号与系统_Python_142
  • 二阶差分:
    信号与系统基于Python python 信号与系统_Python_143
  • m阶差分:
    信号与系统基于Python python 信号与系统_信号处理_144


1.5.2. 经典解法

  • 差分方程 本质上是 递推的代数方程, 若已知初始条件和激励, 利用迭代法可求其数值解。

信号与系统基于Python python 信号与系统_python_145

  • 经典解法: 信号与系统基于Python python 信号与系统_Python_146
  • 信号与系统基于Python python 信号与系统_信号处理_147 完全解
  • 信号与系统基于Python python 信号与系统_傅立叶分析_148 齐次解 homogeneous solution
    信号与系统基于Python python 信号与系统_信号与系统基于Python_149
  • 信号与系统基于Python python 信号与系统_傅立叶分析_150 特解
  • 特征根: eigenvalue 特征值
    信号与系统基于Python python 信号与系统_python_151

信号与系统基于Python python 信号与系统_信号与系统基于Python_152


1.5.3. 初始值

  • 初始状态: 用 信号与系统基于Python python 信号与系统_信号处理_153


1.5.4. 响应

信号与系统基于Python python 信号与系统_Python_154

  • 零输入响应: 信号与系统基于Python python 信号与系统_Python_155
  • 离散系统的激励为零,仅由系统的初始状态引起的响应
    信号与系统基于Python python 信号与系统_傅立叶分析_156
  • 零状态响应: 信号与系统基于Python python 信号与系统_傅立叶分析_157
  • 系统的初始状态 信号与系统基于Python python 信号与系统_傅立叶分析_158为零,仅由激励 信号与系统基于Python python 信号与系统_Python_159
  • 初始值:由迭代法求出 信号与系统基于Python python 信号与系统_python_160
  • 响应分类:
  • 固有响应:系统固有频率 或叫自由响应
  • 强迫响应:与激励函数有关
  • 暂态响应:随时间增长而消失
  • 稳态响应:通常为阶跃函数和周期


1.5.5. Python 求解离散系统的零状态响应

  • 输入信号 信号与系统基于Python python 信号与系统_信号处理_161, 其中 信号与系统基于Python python 信号与系统_傅立叶分析_162 是随机噪声信号。求以下系统的零状态响应(均值滤波结果),取 信号与系统基于Python python 信号与系统_python_163
    信号与系统基于Python python 信号与系统_傅立叶分析_164
# sg is scipy.signal
    d = np.random.rand(1,51)-0.5 # random.rand 出来的是 0到1 的随机数
    k = np.array([k for k in range(0,51)])
    s = 2*k*np.power(0.9,k)
    f = s+d[0]

    plt.subplot(211)
    plt.stem(k,f,'-',use_line_collection=True)
    plt.grid(True)

    M = 5
    a = 1
    b = np.ones(5)/5
    plt.subplot(212)
    y = sg.filtfilt(b,a,f) # digital filter forward and backward to a signal
    plt.stem(k,y,':',use_line_collection=True)
    plt.grid(True)
    
    plt.xlabel('time index k')
    plt.show()

信号与系统基于Python python 信号与系统_信号处理_165


1.5.6. 单位脉冲序列

  • 单位脉冲序列 (单位样值序列/单位取样序列)
    信号与系统基于Python python 信号与系统_Python_166
  • 位移:
    信号与系统基于Python python 信号与系统_信号处理_167
  • 加: 信号与系统基于Python python 信号与系统_信号处理_168
  • 乘: 信号与系统基于Python python 信号与系统_python_169
  • 延时: 信号与系统基于Python python 信号与系统_信号处理_170
  • 迭分:
    信号与系统基于Python python 信号与系统_信号处理_171
  • 取样性质:
  • 信号与系统基于Python python 信号与系统_信号与系统基于Python_172
  • 信号与系统基于Python python 信号与系统_傅立叶分析_173
  • 信号与系统基于Python python 信号与系统_python_174
  • 信号与系统基于Python python 信号与系统_信号处理_175
  • 信号与系统基于Python python 信号与系统_傅立叶分析_176
  • 偶函数: 信号与系统基于Python python 信号与系统_Python_177


1.5.7. 单位阶跃序列

  • 单位阶跃序列
    信号与系统基于Python python 信号与系统_Python_178
  • 位移:
    信号与系统基于Python python 信号与系统_Python_179
  • 加: 信号与系统基于Python python 信号与系统_信号与系统基于Python_180
  • 乘: 信号与系统基于Python python 信号与系统_信号与系统基于Python_181
  • 延时: 信号与系统基于Python python 信号与系统_傅立叶分析_182
  • 迭分:
    信号与系统基于Python python 信号与系统_信号处理_183
  • 信号与系统基于Python python 信号与系统_信号与系统基于Python_184 的关系:
    信号与系统基于Python python 信号与系统_Python_185


1.5.8. 单位脉冲响应

  • 由单位脉冲序列 信号与系统基于Python python 信号与系统_python_186 所引起的零状态响应,记为 信号与系统基于Python python 信号与系统_信号处理_187
  • 隐含条件:
    信号与系统基于Python python 信号与系统_python_188
    对二阶系统 信号与系统基于Python python 信号与系统_信号处理_189


1.5.9. 单位阶跃响应

  • 由单位阶跃序列 信号与系统基于Python python 信号与系统_傅立叶分析_190 所引起的零状态响应,记为 信号与系统基于Python python 信号与系统_Python_191
  • 隐含条件:
    信号与系统基于Python python 信号与系统_信号处理_192
    对二阶系统 信号与系统基于Python python 信号与系统_傅立叶分析_193
  • 关联:
    信号与系统基于Python python 信号与系统_Python_194
    信号与系统基于Python python 信号与系统_信号处理_195


1.5.10. Python 求解单位脉冲响应

  • 求以下离散系统的单位脉冲响应:
    信号与系统基于Python python 信号与系统_傅立叶分析_196
# sg is scipy.signal
    k = np.array([k for k in range(11)])
    a = [1., 3., 2.]
    b = [1.]
    h = sg.lfilter(b,a,k) # IIR or FIR filter
    plt.stem(k,h,'-', use_line_collection = True)
    plt.grid(True)
    plt.show()

信号与系统基于Python python 信号与系统_信号处理_197



1.5.11. 卷积和

  • 信号与系统基于Python python 信号与系统_信号处理_198
    可得 信号与系统基于Python python 信号与系统_信号处理_199
  • 卷积和 信号与系统基于Python python 信号与系统_python_200
  • 定义:
  • 信号与系统基于Python python 信号与系统_信号处理_90信号与系统基于Python python 信号与系统_傅立叶分析_91 在区间 信号与系统基于Python python 信号与系统_信号处理_203 的 卷积: 信号与系统基于Python python 信号与系统_信号与系统基于Python_204
  • 记为 信号与系统基于Python python 信号与系统_信号与系统基于Python_205
  • 信号与系统基于Python python 信号与系统_信号与系统基于Python_206
  • 信号与系统基于Python python 信号与系统_傅立叶分析_207 是因果序列 (信号与系统基于Python python 信号与系统_信号与系统基于Python_208), 则: 信号与系统基于Python python 信号与系统_傅立叶分析_209
  • 信号与系统基于Python python 信号与系统_傅立叶分析_210 是因果序列 (信号与系统基于Python python 信号与系统_信号处理_211), 则: 信号与系统基于Python python 信号与系统_信号处理_212
  • 信号与系统基于Python python 信号与系统_Python_213 均是因果序列 (信号与系统基于Python python 信号与系统_傅立叶分析_214), 则: 信号与系统基于Python python 信号与系统_python_215
  • 代数性质:
  • 三定律:
  1. 交换律: 信号与系统基于Python python 信号与系统_信号处理_94
  2. 分配律: 信号与系统基于Python python 信号与系统_Python_95
  3. 结合律: 信号与系统基于Python python 信号与系统_傅立叶分析_96
  • 特性:
  • 信号与系统基于Python python 信号与系统_傅立叶分析_219
  • 信号与系统基于Python python 信号与系统_信号处理_220
  • 信号与系统基于Python python 信号与系统_傅立叶分析_221
  • 信号与系统基于Python python 信号与系统_傅立叶分析_222
  • 信号与系统基于Python python 信号与系统_Python_223
  • 衍生:
    信号与系统基于Python python 信号与系统_信号与系统基于Python_224


1.5.12. Python 求卷积和

  • 求以下两个离散序列的卷积:
    信号与系统基于Python python 信号与系统_信号与系统基于Python_225
# sg is scipy.signal
    k1 = np.linspace(0,10,11)
    x1 = np.sin(k1)
    plt.subplot(221)
    plt.stem(k1,x1,'-',use_line_collection=True)
    plt.grid(True)
    plt.title('x_1(k)=sin(k)')
    
    k2 = np.linspace(0,15,16)
    x2 = np.power(0.8,k2)
    plt.subplot(222)
    plt.stem(k2,x2,'-',use_line_collection=True)
    plt.grid(True)
    plt.title('x_2(k) = 0.8^k')
    
    plt.subplot(212)
    y = sg.convolve(x1, x2,'full') # 使用 scipy.signal 的卷积函数 convolve
    k3 = np.linspace(0, 25,26)
    plt.stem(k3,y,'-',use_line_collection=True)
    plt.grid(True)
    plt.title('y(k)')
    
    plt.xlabel('time index k')
    plt.subplots_adjust(top=1, wspace=0.4, hspace=0.5) # 调整视图  
    plt.show()

信号与系统基于Python python 信号与系统_Python_226

信号与系统基于Python python 信号与系统_Python_227


1.5.13. 差分算子 E

信号与系统基于Python python 信号与系统_python_228

  • 性质:
  • 信号与系统基于Python python 信号与系统_Python_229正幂 多项式可以因式分解 也可以相乘
  • 信号与系统基于Python python 信号与系统_python_230信号与系统基于Python python 信号与系统_Python_229 的正幂或负幂多项式,则 信号与系统基于Python python 信号与系统_傅立叶分析_232
  • 差分算子方程公因子 不能随意 消去
  • 信号与系统基于Python python 信号与系统_python_233信号与系统基于Python python 信号与系统_Python_229正幂多项式,
    信号与系统基于Python python 信号与系统_信号与系统基于Python_235
    信号与系统基于Python python 信号与系统_信号与系统基于Python_236
  • 传输算子:
    信号与系统基于Python python 信号与系统_信号与系统基于Python_237

To TOP 至目录