最大值
输入数据或输入数据序列的最大值。
类型: Maximum
图书馆中的路径:
|
说明
最大值 程序块可确定输入数据每行或每列或给定输入数据大小的向量中最大元素的值和位置。它还可以计算整个输入信号的最大值。 Mode 参数定义了程序块的模式,可设置为以下值之一:
-
Value
- 程序块输出指定维度的最大值。 -
Index
- 程序块输出指定维度中最大值的索引数组。 -
Value and Index
- 程序块在指定维度中输出最大值和相应的索引数组。
您可以使用*查找最大值*参数指定维度。
端口
输入
输入 - 数据输入
矩阵
该代码块接受多通道和多维输入数据,可为实数或复数。输入数据可以是浮点数或逻辑数。
数据类型: Float16
, Float32
, Float64
, Int8
, Int16
, Int32
, Int64
, Int128
, UInt8
, UInt16
, UInt32
, UInt64
, UInt128
*支持复数:是
输出
Val - 指定维度的最大值
标量 | 向量 | 矩阵
最大值的数据类型与输入数据类型一致。
如果 Mode 设置为 "数值和索引 "或 "数值",则会出现以下情况:
-
程序块计算最大值的维度的维数是
1
。所有其他维度的维数与输入数组的维数相同。例如,当输入数组 M×N×P 且维度设置为 `1`时,程序块输出一个 1×N×P 的数组。当维度设置为 "3 "时,程序块会输出一个 M 乘 N 的二维矩阵。 -
当输入信号是一个 M 乘 N 的矩阵且维度设置为 "1 "时,程序块输出一个 1 乘 N 的矩阵。
如果指定程序块计算所有输入数据的最大值,程序块将输出一个标量。
数据类型: Float64
Idx - 沿指定维度的最大值索引
标量 | 向量 | 矩阵
当输入数据为双倍时,索引值也会加倍。
依赖关系
要使用此端口,请将 Mode 参数设置为 "数值和索引 "或 "数值"。
数据类型: Float64
参数
主要参数
模式 - 块的工作模式
值和索引(默认)` | 值
| `索引
当 Mode 参数设置为
-
值"--程序块计算输入数据每一行或每一列的最大值,或沿给定输入数据大小的向量计算最大值。它还可以计算每个采样点上所有输入数据的最大值,并输出数组 。输出中的每个元素都是相应列、行、矢量或所有输入数据的最大值。 的输出取决于 Find the maximum value over 的设置。考虑 P 上大小为 M 乘 N 的三维输入数据。Find the maximum value over 设置为
-
每行"--每次采样时的输出数据 由 P 上一个 M 乘 1 的数组组成,其中每个元素都包含输入数据第二个维度上每个向量的最大值。对于 M 乘 N 的矩阵输入数据,每个采样时间的输出数据是 M 乘 1 的列向量。
-
每列"--每个采样时间的输出数据 由大小为 1 乘 N 乘 P 的数组组成,其中每个元素包含输入数据第一个维度上每个向量的最大值。对于大小为 M 乘 N 的输入矩阵,每个采样时刻的输出是一个大小为 1 乘 N 的行向量。
在这种模式下,程序块将长度为 的无向向量输入数据处理为大小为 M 乘 1 的列向量。
-
永久输入"--每个采样时刻的输出 是一个标量,包含输入矩阵 M 乘 N 乘 P 中的最大值。
-
指定维数"- 在每个采样时刻的输出取决于维数。如果维度设置为 "1",输出将与每列被选中时相同。如果维度设置为 "2",输出将与选择每一行时的输出相同。如果维度设置为 "3",则每个采样时间的输出数据是一个 M 乘 N 的矩阵,其中包含输入数据第三个维度上每个向量的最大值。
-
*复杂输入数据。
对于复数输入数据,程序块会沿着输入数据的给定维度向量或整个输入信号的最大值平方,选择输入数据每一行或每一列中的值,如下图所示。对于复数值 ,平方值为 。
-
Index
- 该模块计算输入数据中每一行或每一列的最大值,以及给定输入大小的向量或整个输入,并输出一个索引数组 。 中的每个元素都是整数,表示相应列、行、向量或整个输入数据中的最大值。 的结果取决于 Find the maximum value over 参数的设置。 考虑大小为 M 乘 N 乘 P 的三维输入信号:-
在每个采样时间的输出由 P 上一个 M 乘 1 的数组组成,其中每个元素都包含输入数据第二个维度上每个矢量最大值的索引。输入数据是一个 M 乘 N 的矩阵,每个采样时间的输出是一个 M 乘 1 的列向量。
-
每列"-- 在每个采样时间的输出由一个 1 乘 N 乘 P 的数组组成,其中每个元素都包含输入数据第一个维度上每个向量最大值的索引。输入数据是一个 M 乘 N 的矩阵,每个采样时间的输出是一个 1 乘 N 的行向量。
在此模式下,程序块将长度为 的无向向量输入数据处理为 M 乘 1 的列向量。
-
永久输入"-- 在每个采样时间的输出代表一个大小为 1 乘 3 的向量,其中包含输入矩阵 M 乘 N 乘 P 中最大值的位置。对于 M 乘 N 矩阵的输入数据,输出数据是一个 1 乘 2 的向量。
-
指定维数"- 在每个采样点的输出取决于维数。如果维度设置为 "1",则输出与选择每一列时的输出相同。如果维度设置为 "2",输出将与选择每一行时的输出相同。如果维度设置为 "3",则每个采样时间的输出数据是一个 M 乘 N 的矩阵,其中包含输入数据第三个维度上每个向量的最大值的索引。
-
当最大值出现不止一次时,计算出的索引与第一次出现的索引相对应。例如,当输入数据为列向量"[3 2 1 2 2 3]"时,选择 "每列 "时,按单位计算的最大值索引为 "1",而不是 "5"。
-
值和索引` - 该单元沿给定输入数据维数的向量输出输入数据每一行或每一列的最大值,或输出整个输入和相应的索引数组 。
查找最大值 - 程序块计算最大值的维度
每列(默认)` | 每行` | 全部输入` | 指定维度
每列"- 程序块输出每列的最大值。
每行` - 该代码块输出每行的最大值。
整个输入"- 该代码块输出整个输入的最大值。
指定尺寸` - 程序块输出与 Dimension 参数中指定的尺寸相比的最大值。
依赖关系
要使用此参数,请将 Mode 设置为 Index
、Value
或 Value and Index
。
Dimension - 自定义维度
1(默认) | `标量
指定块计算最大值的输入信号维数(单位值)。此参数的值必须大于零,小于输入信号的维数。
依赖关系
要使用此参数,请将*查找最大值*设置为 "指定维度"。