Main Content

max

fi 对象数组中的最大元素

说明

示例

M = max(A) 返回沿 fi 数组 A 不同维度的最大元素。

  • 如果 A 是向量,则 max(A) 返回 A 中的最大元素。

  • 如果 A 是矩阵,则 max(A)A 的列视为向量,返回包含每列中最大元素的行向量。

  • 如果 A 是多维数组,则 max 沿第一个非单一维度进行运算,并返回由最大值组成的数组。

示例

M = max(A,[],dim) 返回沿维度 dim 的最大元素。

示例

[M,I] = max(___) 支持上述语法中的任何输入参数,且可查找最大值的索引,并在数组 I 中返回它们。如果同一最大值出现多次,则返回第一次出现位置的索引。

示例

C = max(A,B)AB 中的最大元素,并返回由这些元素组成的数组。

示例

全部折叠

创建一个定点向量,并返回向量的最大值。

A = fi([1,5,4,9,2],1,16);
M = max(A)
M = 
     9

          DataTypeMode: Fixed-point: binary point scaling
            Signedness: Signed
            WordLength: 16
        FractionLength: 11

创建一个定点矩阵。

A = fi(magic(4),1,16)
A = 
    16     2     3    13
     5    11    10     8
     9     7     6    12
     4    14    15     1

          DataTypeMode: Fixed-point: binary point scaling
            Signedness: Signed
            WordLength: 16
        FractionLength: 10

通过沿第二个维度查找最大值来查找每一行的最大元素。

M = max(A,[],2)
M = 
    16
    11
    12
    15

          DataTypeMode: Fixed-point: binary point scaling
            Signedness: Signed
            WordLength: 16
        FractionLength: 10

输出向量 M 是一个列向量,包含了每一行的最大元素。

创建一个定点矩阵。

A = fi(magic(4),1,16)
A = 
    16     2     3    13
     5    11    10     8
     9     7     6    12
     4    14    15     1

          DataTypeMode: Fixed-point: binary point scaling
            Signedness: Signed
            WordLength: 16
        FractionLength: 10

查找每一列的最大元素。

M = max(A)
M = 
    16    14    15    13

          DataTypeMode: Fixed-point: binary point scaling
            Signedness: Signed
            WordLength: 16
        FractionLength: 10

输出 M 是一个行向量,包含了 A 中每一列的最大元素。

查找每个最大元素的索引。

[M,I] = max(A)
M = 
    16    14    15    13

          DataTypeMode: Fixed-point: binary point scaling
            Signedness: Signed
            WordLength: 16
        FractionLength: 10
I = 1×4

     1     4     4     1

向量 I 包含 M 中最小元素的索引。

创建两个相同大小的定点数组。

A = fi([2.3,4.7,6;0,7,9.23],1,16);
B = fi([9.8,3.21,1.6;pi,2.3,1],1,16);

AB 中查找最大元素。

C = max(A,B)
C = 
    9.7998    4.7002    6.0000
    3.1416    7.0000    9.2300

          DataTypeMode: Fixed-point: binary point scaling
            Signedness: Signed
            WordLength: 16
        FractionLength: 11

C 包含 AB 中每对对应元素中的最大元素。

创建一个复数定点向量 a

a = fi([1+2i,3+6i,6+3i,2-4i],1,16)
a = 
   1.0000 + 2.0000i   3.0000 + 6.0000i   6.0000 + 3.0000i   2.0000 - 4.0000i

          DataTypeMode: Fixed-point: binary point scaling
            Signedness: Signed
            WordLength: 16
        FractionLength: 12

该函数通过提取具有最大幅值的元素查找复数向量的最大元素。

abs(a)
ans = 
    2.2361    6.7083    6.7083    4.4722

          DataTypeMode: Fixed-point: binary point scaling
            Signedness: Signed
            WordLength: 16
        FractionLength: 12

在向量 a 中,位置 23 处的最大元素的幅值为 6.7083max 函数返回输出 x 中的最大元素以及该元素在输出 y 中的索引。

[x,y] = max(a)
x = 
   3.0000 + 6.0000i

          DataTypeMode: Fixed-point: binary point scaling
            Signedness: Signed
            WordLength: 16
        FractionLength: 12
y = 2

尽管索引 2 和 3 处的元素具有相同的幅值,但始终返回该值第一次出现位置的索引。

输入参数

全部折叠

输入 fi 数组,指定为标量、向量、矩阵或多维数组。AB 的维度必须匹配,除非其中一个是标量。

max 函数忽略 NaNs

数据类型fi

复数支持:是

其他输入 fi 或数值数组,指定为标量、向量、矩阵或多维数组。AB 的维度必须匹配,除非其中一个是标量。

max 函数忽略 NaNs

数据类型fi|single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

复数支持:是

运算维度,指定为正整数标量。dim 也可以是 fi 对象。如果不指定值,则默认值是大小不等于 1 的第一个数组维度。

数据类型fi|single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

输出参数

全部折叠

最大值,以标量、向量、矩阵或多维数组形式返回。M 始终具有与输入相同的数据类型。

索引,以标量、向量、矩阵或多维数组形式返回。如果同一最大值出现多次,则 I 包含该值第一次位置出现的索引。I 的数据类型始终为 double

AB 中的最大元素,以标量、向量、矩阵或多维数组形式返回。

算法

AB 是复数时,max 函数返回幅值最大的元素。如果两个幅值相等,则 max 返回第一个值。此行为不同于内置 max 函数解决复数之间结值的方式。

扩展功能

C/C++ 代码生成
使用 MATLAB® Coder™ 生成 C 代码和 C++ 代码。

HDL 代码生成
使用 HDL Coder™ 为 FPGA 和 ASIC 设计生成 VHDL、Verilog 和 SystemVerilog 代码。

版本历史记录

在 R2006a 之前推出

另请参阅

| | |