脉冲响应函数

这篇博客探讨了如何使用numpy库在Python中实现随机信号的生成,并通过卷积函数模拟信号响应。首先,创建了一个包含0和1的随机信号,然后定义了一个衰减函数模拟响应。最后,通过卷积操作将这两个函数结合,展示了信号处理的基本概念。
部署运行你感兴趣的模型镜像

在这里插入图片描述

import numpy as np

s = 0
t_space = 10
total_mins = 1440*7
N = total_mins // t_space

f = np.zeros(N)
for t in range(N):
    f[t] = 1 if np.random.random() < 0.01 else 0

def uir(t):
    return np.exp(-((t)/100)**2)
    return 1 if t < 100 else 0

plt.plot([uir(t) for t in range(1000)])
plt.show()

在这里插入图片描述

def convolve( uir, signal):
    s = 0
    for i in range(len(signal)):
        s += signal[-i-1] * uir(i)
    return s

s = np.zeros(N)
for t in range(N):
    signal = f[:t]
    s[t] += convolve(lambda x:uir(x), signal)

plt.figure(figsize=(20,8))
plt.subplot(2,1,1)
plt.plot(f, label='input')
plt.legend(loc='upper left')
plt.yticks([0,1])
plt.subplot(2,1,2)
plt.plot(s, label='responnse'.format(i+1))
plt.legend(loc='upper left')
plt.show()

您可能感兴趣的与本文相关的镜像

Python3.11

Python3.11

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

颹蕭蕭

白嫖?

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值