# min
fi 对象数组中的最小元素
函数库: TyFixedPoint
# 语法
M = min(A)
M = min(A,dim)
C = min(A,B)
# 说明
M = min(A) 返回沿 fi 数组 A 不同维度的最小元素。
- 如果 A 是向量,则 min(A) 返回 A 中的最小元素;
- 如果 A 是矩阵,则 min(A) 将 A 的列视为向量,返回包含每列中最小元素的行向量;
- 如果 A 是多维数组,则 min 沿第一个非单一维度进行运算,并返回由最小值组成的数组。
M = min(A,dim) 返回沿维度 dim 的最小元素。
C = min(A,B) 取 A 或 B 中的最小元素,并返回由这些元素组成的数组。
# 示例
向量中的最小元素
创建一个定点向量,并返回向量的最小值。
using TyFixedPoint
A = fi([1,5,4,9,2],1,16);
M = min(A)
1.0
DataTypeMode: Fixed_point_binary_point_scaling
Signedness: Signed
WordLength: 16
FractionLength: 11
每个矩阵行的最小元素
创建一个定点矩阵。
using TyFixedPoint
A = fi([16 2 3 13; 5 11 10 8; 9 7 6 12; 4 14 15 1],1,16)
4×4 Matrix{fi}:
16.0 2.0 3.0 13.0
5.0 11.0 10.0 8.0
9.0 7.0 6.0 12.0
4.0 14.0 15.0 1.0
DataTypeMode: Fixed_point_binary_point_scaling
Signedness: Signed
WordLength: 16
FractionLength: 10
通过沿第二个维度查找最小值来查找每一行的最小元素。
M = min(A,2)
4×1 Matrix{fi}:
2.0
5.0
6.0
1.0
DataTypeMode: Fixed_point_binary_point_scaling
Signedness: Signed
WordLength: 16
FractionLength: 10
输出向量 M 是一个 1 列矩阵,包含了每一行的最小元素。
每个矩阵列的最小元素
创建一个定点矩阵。
using TyFixedPoint
A = fi([16 2 3 13; 5 11 10 8; 9 7 6 12; 4 14 15 1],1,16)
4×4 Matrix{fi}:
16.0 2.0 3.0 13.0
5.0 11.0 10.0 8.0
9.0 7.0 6.0 12.0
4.0 14.0 15.0 1.0
DataTypeMode: Fixed_point_binary_point_scaling
Signedness: Signed
WordLength: 16
FractionLength: 10
查找每一列的最小元素。
M = min(A)
1×4 Matrix{fi}:
4.0 2.0 3.0 1.0
DataTypeMode: Fixed_point_binary_point_scaling
Signedness: Signed
WordLength: 16
FractionLength: 10
输出向量 M 是一个 1 行矩阵,包含了每一列的最小元素。
两个数组中的最小元素
创建两个相同大小的定点数组。
using TyFixedPoint
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);
从 A 或 B 中查找最小元素。
C = min(A,B)
2×3 Matrix{fi}:
2.2998 3.20996 1.6001
0.0 2.2998 1.0
DataTypeMode: Fixed_point_binary_point_scaling
Signedness: Signed
WordLength: 16
FractionLength: 11
C 包含 A 和 B 中每对对应元素中的最小元素。
复数向量的最小元素
创建一个复数定点向量 a。
using TyFixedPoint
a = fi([1+2im, 2+1im, 3+8im, 9+1im],1,8)
4-element Vector{Complex{fi}}:
1.0+2.0im
2.0+1.0im
3.0+8.0im
9.0+1.0im
DataTypeMode: Fixed_point_binary_point_scaling
Signedness: Signed
WordLength: 8
FractionLength: 3
该函数通过提取具有最小幅值的元素查找复数向量的最小元素。
b = abs(a)
4-element Vector{fi}:
2.25
2.25
8.5
9.0
DataTypeMode: Fixed_point_binary_point_scaling
Signedness: Signed
WordLength: 8
FractionLength: 3
在向量 a 中,位置 1 和 2 处的最小元素的幅值为 2.25。min 函数返回输出 x 中的最小元素。
x = min(a)
1.0+2.0im
DataTypeMode: Fixed_point_binary_point_scaling
Signedness: Signed
WordLength: 8
FractionLength: 3
# 输入参数
A — 输入 fi 数组标量 | 向量 | 矩阵 | 多维数组
fi 数组,指定为标量、向量、矩阵或多维数组。A 和 B 的维度必须匹配。
数据类型: fi
复数支持: 是
B — 其他输入数组标量 | 向量 | 矩阵 | 多维数组
fi 数组,指定为标量、向量、矩阵或多维数组。A 和 B 的维度必须匹配。
数据类型: fi
复数支持: 是
dim — 运算维度正整数 | 标量
运算维度,指定为正整数标量。如果未指定值,则默认值是大小不等于 1 的第一个数组维度。
dim 参数必须是内置数据类型,不能是一个 fi 对象。
数据类型: Int8 | Int16 | Int32 | Int64 | Int128 | UInt8 | UInt16 | UInt32 | UInt64 | UInt128
# 输出参数
M — 最小值标量 | 向量 | 矩阵 | 多维数组
最小值,以标量、向量、矩阵或多维数组形式返回。M 始终具有与输入相同的数据类型。
数据类型: fi
C — A 或 B 中的最小元素标量 | 向量 | 矩阵 | 多维数组
A 或 B 中的最小元素,以标量、向量、矩阵或多维数组形式返回。
数据类型: fi
# 算法
当 A 或 B 是复数时,min 函数返回幅值最小的元素。如果两个幅值相等,则 min 返回第一个值。此行为不同于内置 min 函数解决复数之间结值的方式。