的射频和无线供应商和资源

一站的射频和无线的需要

卷积python代码| numpy卷积,np盘旋

这一页封面卷积python代码。它涵盖比较numpy使用python np卷积函数卷积,卷积使用蛮力方法。

介绍:两个向量序列的卷积可以实现两个矩阵的乘法。用于模拟信道损伤的时域OFDM / OFDMA波形等传输序列。LTI系统(线性时不变),信道脉冲响应(如h [n])和输入序列(比如x [n])可以得到输出序列卷积(y [n])。

➨的卷积h [n] * x [n]可以表示如下。


两个序列的卷积

卷积Python脚本

python脚本后,可以用于模拟卷积功能使用两种不同的方法viz. numpy“np。卷积”功能和蛮力方法。开发人员必须改变所需的输入向量的卷积实数或复数python脚本的开始。


进口numpy np
进口matplotlib。pyplot作为plt

#输入复数
# x = np.random.normal(大小= 3)+ 1 j * np.random.normal(大小= 3)#正常随机复杂向量
# h = np.random.normal(大小= 4)+ 1 j * np.random.normal(大小= 4)#正常随机复杂向量

#输入为实数
x =[56] 20日31日#时域序列在OFDM发射机
h =(10、2、5、8) #时域信道脉冲响应

L = len (x) + len (h) - 1 #长度卷积的输出

方法1:从NumPy Python卷积函数模块
y3 = np。卷积(h, x)
打印(“y3 = ", y3)

方法2:使用蛮力方法卷积
N = len (x)
M = len (h)
y = np.zeros (L)充满了0 #数组
因为我在np.arange (0, N):
在np.arange j(0米):
我+ j] = y (i + j] + x[我]* h [j]
打印(“y = y)

# NumPy模块和蛮力方法的区别
y2 = y-y3

#预置次要情节函数使用行和列的数量
图,轴= plt。次要情节(2,2)
#建在卷积
轴(0,0).plot (y3)
轴(0,0)。set_title(“方法# 1:np.convolve”)
#我们自己的函数
轴[0,1].plot (y)
轴[0,1]。set_title(“方法# 2:蛮力法”)
#两个之间的区别
轴(1,0).plot (y2)
轴(1,0)。set_title(两种方法之间的区别)
plt.show ()

输入为实数

以下是卷积的输入向量的实数。

x =[56] 20日31日#时域序列在OFDM发射机
h =(10、2、5、8) #时域信道脉冲响应

实数的输出卷积python代码

Python的卷积实数

输入复杂的随机数字

下面是卷积python代码的输入向量的复数。

# x = np.random.normal(大小= 3)+ 1 j * np.random.normal(大小= 3)#正常随机复杂向量
# h = np.random.normal(大小= 4)+ 1 j * np.random.normal(大小= 4)#正常随机复杂向量

输出卷积的复数

Python的卷积复数

在这个python代码片段中,我们已经看到比较内置numpy卷积函数即np卷积,卷积使用蛮力方法,真实和复数。

其他有用的DSP代码在Python中

MATLAB的有用链接代码

射频和无线教程


翻译这个页面
Baidu