Engee 文档

相关性

两个输入数据的互相关函数。

类型: Correlation

图书馆中的路径:

/Signal Operations/Statistics/Correlation

资料描述

相关性 计算两个维度为N的输入数组沿第一维度的互相关函数。 该计算可以在时域或频域中执行。 您可以使用*计算域*参数指定区域。

在时域中,块对第一输入信号进行卷积 与第二输入信号的时间反向复共轭 .

在频域中,要计算互相关,块:

  1. 执行两个输入信号的傅立叶变换, .

  2. 乘数;乘数 ,在哪里 -复杂的耦合。

  3. 计算乘积的傅立叶逆变换。

如果为*计算域设置值* 最快,块选择计算次数最少的区域。

港口

入口处

Port_1-传递数据的第一个输入:q[<br>] 向量资料 | 矩阵

块接受具有实数或复数值的多通道和多维输入数据。 当您将*计算域*值设置为 时间. 当一个或两个输入信号是复数时,输出信号也是复数。

<无转换>*数据类型*: 漂浮物16, 漂浮物32, 漂浮64, Int8, Int16, Int32, Int64, Int128, UInt8, UInt16, UInt32, UInt64, UInt128, 固定</无翻译>

支持复数:是

Port_2-第二个数据输入通道:q[<br>] 向量资料 | 矩阵

块接受具有实数或复数值的多通道和多维输入数据。 当您将*计算域*值设置为 时间. 当一个或两个输入信号是复数时,输出信号也是复数。

<无转换>*数据类型*: 漂浮物16, 漂浮物32, 漂浮64, Int8, Int16, Int32, Int64, Int128, UInt8, UInt16, UInt32, UInt64, UInt128, 固定</无翻译>

支持复数:是

出口;出口

Port_1-互相关输出信号通:q[<br>] 向量资料 | 矩阵

两个输入信号的互相关输出。

当输入数据是多维数组时,块输出多维数组,其中除第一维外的所有维都与输入数组匹配。 例如,

  • 当入口 它们分别具有尺寸Muby N by P和mvby N by P,块 相关性 输出一个数组Mu+Mv-1到N到P.

  • 当输入信号 它们具有维度Muby N和Mvby N.块输出矩阵Mu+Mv-1by N。

如果一个输入信号表示列向量而另一个输入信号表示多维阵列,则相关单元计算向量与多维阵列中的每一列的互相关。 例如:

  • 入口是什么时候 以1表示列向量Mu,并且 -n上的矩阵Mv,块输出n上的矩阵Mu+Mv-1。

  • 同样,当 这些是长度分别为mu和Mv的列向量,该块执行向量互相关。

<无转换>*数据类型*: 漂浮64</无翻译>

支持复数:是

参数

主要

计算域-块计算通过的自相关的区域:q[<br>] 时间(默认) | 频率 | 最快
  • 时间 -计算时域中的互相关,从而最大限度地减少内存使用。

  • 频率 -计算频域中的互相关。 有关详细信息,请参阅[Algorithms]

  • 最快 -用最少的计算次数计算互相关。

要处理定点信号,请将此参数设置为 时间.

数据类型

Rounding mode - 四舍五入模式
|Floor (default) |Ceiling |Convergent |Nearest |Round |Simplest |`Zero

选择定点运算的舍入模式。您可以选择

  • Floor` - 将正数和负数舍入到负无穷大。

  • 上限"- 将正数和负数舍入到正无穷大。

  • 收敛"- 将数字四舍五入到最接近的可表示值。如果数字的小数部分以 5 结尾,则四舍五入到最接近的偶数整数。

  • 最近"- 将数字舍入到最接近的可表示值。如果数字的小数部分以 5 结尾,则四舍五入为最接近的偶数整数。

  • Round` - 将数字舍入到最接近的可表示值。如果数字的小数部分以 5 结尾,正数四舍五入为正无穷大,负数四舍五入为负无穷大。

  • Simplest` - 自动在 "Floor "舍入和 "Zero "舍入之间进行选择,以生成尽可能高效的舍入代码。

  • Zero - 将数字舍入为零。

程序块参数总是四舍五入到最接近的可表示值。

如果满足条件,*四舍五入模式*和*整数溢出时使之饱和*设置不会影响数值结果:

  • *产品输出*设置为 "继承:通过内部规则继承"。

  • 累加器*参数设置为 "继承:通过内部规则继承"。

  • 输出*参数设置为 "继承:与累加器相同"。

通过这些数据类型设置,程序块以全精度模式运行。

整数溢出时饱和 - 整数溢出时饱和
已禁用(默认) | 已启用

选中该复选框时,将对整数和定点数使用饱和运算:发生溢出时,结果将自动替换为数据类型的最大可能(模)值。

操作 原理 对溢出的影响 示例

已选中(启用)Saturate on integer overflow 复选框。

您的模型可能存在溢出,您希望生成的代码明确防止溢出。

当发生溢出时,结果将自动替换为数据类型可能的最大值(模)。

Int8(有符号 8 位整数)数据类型可表示的最大值是 127。

块操作的任何结果如果超过这个最大值,都会导致 8 位整数溢出。检查时,块输出饱和到 127。同样,在最小输出值为 -128 时,程序块输出也会饱和。

整数溢出时饱和*复选框未选中(禁用)。

您希望优化生成代码的效率。

您希望避免过度确定程序块如何处理超出范围的信号。

溢出将以数据类型所能表示的适当值承载。

Int8(有符号的 8 位整数)数据类型可表示的最大值为 127。

块操作的任何结果如果超过这个最大值,都会导致 8 位整数溢出。如果未选中复选框,软件会将导致溢出的值解释为 Int8,这可能会导致意外结果。例如,以 Int8 表示的块 130(二进制代码 1000 0010)的结果为 -126。

选择该复选框后,饱和将应用于程序块中的所有内部操作,而不仅仅是输入/输出数据或结果。

计划使用

块参数

SaturateOnIntegerOverflow

价值观

|

默认值

产品输出* - 产品输出数据类型
Inherit: Same as input (default) | fixdt([],16,0)

Details

指定工作的输出数据类型。您可以将此参数设置为以下值:

  • 继承数据类型的规则,例如,Inherit: Same as input

  • 导致有效数据类型的表达式,例如,fixdt([],16,0)

Accumulator - 累加器数据类型
继承:通过内部规则继承(默认)` | 继承:与输入相同 | fixdt([],16,0)

*累加器*指定块中累加操作输出的数据类型。可以将此参数设置为以下值:

  • 继承:通过内部规则继承` - 程序块根据内部规则继承工作输出数据类型。

  • 继承:与输入相同"--程序块将累加器数据类型设置为与输入数据类型相同。

  • fixdt(1,16,0)`--该代码块指定了一种字长为 16 位、分数长度为 0 的自动有符号二进制缩放定点数据类型。

Output data type - 输出数据类型
Float16 | Float32 | Float64 | Int8 | Int16 | Int32 | Int64 | Int128 | UInt8 | UInt16 | UInt32 | UInt64 | UInt128 | Inherit: auto | Fixed point.

指定输出数据类型。

类型可以继承、直接指定或表示为数据类型对象。

软件用法

块参数:

OutDataTypeStr

*参考:

Float16| Float32| Float64| Int8| Int16| Int32| Int64| Int128| UInt8| UInt16| UInt32| UInt64| UInt128| Fixed

默认值:

Float64

Output minimum - 最小输出数据值
[] (默认) | scalar - 最小输出数据值

最小输出数据值默认为 [],相当于 -Inf

这个数字必须是有限的实数双标量值。

如果总线类型的对象被指定为该数据块的数据类型,则不要为该数据块中的数据指定最小值。Engee 会忽略这一设置。相反,应为指定为数据类型的对象元素设置最小值。

Engee 使用此值执行:

  • 建模范围检查。

  • 定点数据类型的自动缩放

  • 优化从模型生成的代码。这种优化会删除算法代码,并影响某些模拟模式的结果。

该参数不会对实际输出信号进行饱和或修整。取而代之的是使用块 饱和度

软件使用

块参数

OutMin

价值观

[ ] | 标量

默认值

[ ]

输出最大值* - 最大输出数据值
[] (默认) | scalar - 最大输出数据值

Details

最大输出数据值默认为 [],相当于 Inf

这个数字必须是有限有效的双标量值。

如果总线类型的对象被指定为该数据块的数据类型,则不要为该数据块中的数据指定最大值。Engee 会忽略这一设置。取而代之的是,为指定为数据类型的对象元素设置最大值。

Engee 使用此值执行:

  • 建模范围检查。

  • 定点数据类型的自动缩放

  • 优化从模型生成的代码。这种优化会删除算法代码,并影响某些模拟模式的结果。

该参数不会对实际输出信号进行饱和或修整。取而代之的是使用块 饱和度

软件使用

块参数

OutMax

价值观

[ ] | 标量

默认值

[ ]

锁定数据类型设置,防止定点工具更改 - 锁定数据类型的自动缩放功能
已禁用(默认) | 已启用

复选框,用于阻止定点数据类型的自动缩放。

软件使用

块参数

LockScale

价值观

|

默认值

此外

互相关函数

互相关函数是两个离散时间序列相似性的度量,取决于一个相对于另一个的延迟。

对于长度为N的两个确定性输入或联合平稳宽范围随机过程(WSS)的实现, ,使用以下关系式计算互相关:

哪里:

  • -延迟

  • -复杂的耦合。

如果输入数据是共享静止随机过程的实现, 它是理论互相关的不规则估计:

ρ ,

哪里:

  • -数学期望运算符。

算法

时域中的计算

为计算区域设置值时 时间 该算法计算时域中两个信号的互相关。 输入信号可以是该区域的定点信号。

两个二维数组的相关性

当输入数据为两个二维数组时, -输出数据的第列, ,包含这些元素:

哪里:

  • -复杂的耦合。

  • -输入矩阵为Muby N。

  • -输入矩阵为Mvby N。

  • -n上的矩阵Mu+Mv-1。

输入数据 如果它们在其可接受范围之外进行索引,则等于零。

列向量与二维数组的相关性

当一个输入信号表示列向量而另一个输入信号表示二维阵列时,算法独立地将输入向量与二维阵列的每一列互相关。 -输出数据的第列, 包含这些元素:

哪里:

  • -复杂的耦合。

  • -输入矩阵为Mu乘1。

  • -输入矩阵为Mvby N。

  • -n上的矩阵Mu+Mv-1。

输入数据 如果它们在其可接受范围之外进行索引,则等于零。

两个列向量的相关性

当输入数据为两列向量时, -输出数据的第列, ,包含这些元素:

哪里:

  • -复杂的耦合。

  • -输入矩阵为Mu乘1。

  • -输入矩阵为Mv乘1。

  • -矩阵Mu+Mv-1乘1。

输入数据 如果它们在其可接受范围之外进行索引,则等于零。

频域中的计算

为计算区域设置值时 频率 算法计算频域中的互相关。

为了计算互相关,算法:

  • 接受两个输入信号的傅立叶变换, .

  • 乘数 ,在哪里 -复杂的耦合。

  • 计算乘积的傅立叶逆变换。

在该区域中,取决于输入数据的长度,算法可能需要更少的计算。