Convolution
调节两个输入数据。
类型: Convolution
图书馆中的路径:
|
说明
卷积*块执行多维输入数组 的第一维度与多维输入数组 的第一维度的卷积。该程序块还可以将矢量列与多维输入数组的第一维度进行卷积。
卷积的一般公式如下:
Engee*数字信号处理*库的两个模块适用于两个输入信号的卷积:
-
卷积
-
离散 FIR 滤波器
卷积*块假定 和 的所有元素在每个时间步都可用,并在每个时间步计算整个卷积。
离散 FIR 滤波器*块可用于在 的所有元素在每个时间步都可用,但 是在整个模拟时间内到达的序列的情况下对信号进行卷积。使用*离散 FIR 滤波器*块时,卷积只计算一次。
端口
输入
端口_1 - 第一个输入信号
标量"|"向量"|"矩阵"|"多维数组
第一个输入信号 ,可以是标量、矢量、矩阵或多维数组。
如果两个输入均为实数,则输出信号为实数。如果一个或两个输入端都是复数,则输出信号为复数。除第一个输入端口外,两个输入端口的所有输入维度必须具有相同的值。
如果输入 和 的索引超出其有效范围,则其值为零。
数据类型: Float16
, Float32
, Float64
, Int8
, Int16
, Int32
, Int64
, UInt8
, UInt16
, UInt32
, UInt64
, Bool
*支持复数:是
端口 2 - 第二个输入信号
标量"|"向量"|"矩阵"|"多维数组
第二个输入信号 ,可以是标量、矢量、矩阵或多维数组。
如果两个输入都是实数,输出信号也是实数。如果一个或两个输入端都是复数,则输出信号为复数。除第一个输入端口外,两个输入端口的所有输入尺寸必须具有相同的值。
如果输入 和 的索引超出其有效范围,则其值为零。
数据类型: Float16
, Float32
, Float64
, Int8
, Int16
, Int32
, Int64
, UInt8
, UInt16
, UInt32
, UInt64
, Bool
*支持复数:是
更多信息
选择合适的卷积单元
问题 | 答案 | 推荐区块 |
---|---|---|
您要执行多少次卷积 |
多次卷积,每个时间步长一次 |
|
在整个模拟期间进行一次卷积 |
*卷积块
|
|
输入序列的长度是多少 |
两个序列的长度都是有限的 |
|
一个序列有无限长(非预定义)的长度 |
|
|
有多少输入是标量流 |
无 |
|
一个或两个 |
*缓冲区*块,然后是*卷积*块
|
转换两个多维数组
卷积*块总是计算两个多维输入数组沿第一维的卷积。当两个输入数组都是多维数组时,它们的第一个维度的大小可能不同,但所有其他维度的大小必须相同。例如,如果 是一个 Mu by N by P 的数组,而 是一个 Mv by N by P 的数组,那么输出就是一个 (Mu+Mv-1) by N by P 的数组。
如果 是 N 上的矩阵 Mu, 是 N 上的矩阵 Mv,则 的输出是 N 上的矩阵 (Mu+Mv-1),其第 j 列由以下元素组成
如果输入 和 的索引超出其范围,则它们的值为零。如果两个输入都是实数,输出也是实数。如果一个或两个输入均为复数,则输出为复数向量。