Find Nonzero Elements
查找数组中的非零元素

库:
Simulink /
Math Operations
描述
扩展示例
Parallel Channel Power Allocation
A potential use of the Find Nonzero Elements block. This block outputs a variable-size signal containing the indices of the nonzero values of the input.
端口
输入
输入信号,模块将从中查找所有非零元素。
数据类型: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| Boolean
| fixed point
输出
Find Nonzero Elements 模块将非零元素的索引输出为一个可变大小信号。您可以使用输出数据类型模块参数控制输出的数据类型。
依赖关系
默认情况下,模块从第一个输出端口输出线性索引。当您将索引输出格式更改为下标时,该模块将以下标形式提供二维或更大信号的元素索引。在此模式下,必须指定输入维数,模块将为每个维度创建单独的输出端口。
数据类型: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| Boolean
| fixed point
(可选)Find 模块可以将所有非零元素的值输出为一个可变大小信号。
依赖关系
要启用此端口,请选择显示非零输入值的输出端口。
数据类型: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| Boolean
| fixed point
参数
常设
选择非零输入值的索引的输出格式。
选择线性索引将以向量形式提供任何维度信号的元素索引。对于一维(向量)信号,索引对应于向量内非零值的位置。对于具有多个维度的信号,会沿第一个维度将下标转换为索引。您无需知道输入信号的信号维度。
选择下标将以下标形式提供二维或更大信号的元素索引。由于该模块显示每个维度的输出端口,因此该选项要求您指定输入维数。
编程用法
模块参数:IndexOutputFormat
|
类型:字符向量 |
值:'Linear indices' | 'Subscripts'
|
默认值:'Linear indices'
|
将输入信号的维数指定为 1 到 32 之间的正整数值。
依赖关系
要启用此参数,请将索引输出格式设置为下标。
编程用法
模块参数:NumberOfInputDimensions
|
类型:字符向量 |
值:标量 |
默认值:'1'
|
将索引模式指定为从 0 开始或从 1 开始。
对于从 0 开始索引,索引
0
指定输入向量的第一个元素。索引1
指定第二个元素,依此类推。对于从 1 开始索引,索引
1
指定输入向量的第一个元素。索引2
指定第二个元素,依此类推。
编程用法
模块参数:IndexMode
|
类型:字符向量 |
值:'Zero-based' | 'One-based'
|
默认值:'Zero-based'
|
显示或隐藏非零输入值的输出端口。
清除此复选框 (
off
) 后,模块会隐藏非零输入值的输出端口。选中此复选框 (
on
) 后,模块会显示非零输入值的输出端口。额外的输出端口提供非零输入元素的值。
编程用法
模块参数:ShowOutputPortForNonzeroInputValues
|
类型:字符向量 |
值:'on' | 'off'
|
默认值:'off'
|
指定采样时间间隔。要继承采样时间,请将此参数设置为 -1
。有关详细信息,请参阅指定采样时间。
依赖关系
仅当您将此参数设置为 -1
以外的值时才可见。要了解详细信息,请参阅不建议设置采样时间的模块。
编程用法
要以编程方式设置模块参数值,请使用 set_param
函数。
参数: | SampleTime |
值: | "-1" (默认) | scalar or vector in quotes |
数据类型
指定输出数据类型。
数据类型助手可帮助您设置数据属性。要使用数据类型助手,请点击 。有关详细信息,请参阅使用数据类型助手指定数据类型。
编程用法
模块参数:OutDataTypeStr
|
类型:字符向量 |
值:'Inherit: Inherit via internal rule' | 'int8' | 'uint8' | 'int16' | 'uint16' | 'int32' | 'uint32' | 'int64' | 'uint64' | 'fixdt(1,16)' | '<data type expression>' |
默认值:'Inherit: Inherit via internal rule'
|
选择要指定的数据类别。
继承 - 数据类型的继承规则。选择
Inherit
将在右侧启用另一个菜单/文本框,您可以在其中选择继承模式。内置 - 内置数据类型。选择
Built in
将在右侧启用另一个菜单/文本框,您可以在其中选择内置数据类型。定点 - 定点数据类型。选择定点将启用可用于指定定点数据类型的其他参数。
表达式 - 计算结果为数据类型的表达式。选择
Expression
将在右侧启用另一个菜单/文本框,您可以在其中输入表达式。
有关详细信息,请参阅使用数据类型助手指定数据类型。
依赖关系
要启用此参数,请点击显示数据类型助手按钮。
为此信号选择数据类型覆盖模式。
当您选择 inherit 时,Simulink 从信号的上下文(即:从 Simulink® 中使用该信号的模块、
Simulink.Signal
对象或 Stateflow® 图)中继承数据类型覆盖设置。当您选择 off 时,Simulink 忽略信号上下文的数据类型覆盖设置,并使用为信号指定的定点数据类型。
有关详细信息,请参阅 Simulink 文档中的使用数据类型助手指定数据类型。
依赖关系
要启用此参数,请将模式设置为内置或定点。
提示
由于能够关闭单个数据类型的数据类型覆盖,您可以在应用数据类型覆盖时更好地控制模型中的数据类型。例如,您可以使用此选项确保数据类型满足下游模块的要求,而忽略数据类型覆盖设置。
指定定点数据是有符号还是无符号。有符号数据可以表示正值和负值,无符号数据只表示正值。
有符号,将定点数据指定为有符号数据。
无符号,将定点数据指定为无符号数据。
有关详细信息,请参阅使用数据类型助手指定数据类型。
依赖关系
要启用此参数,请将模式设置为 Fixed point
。
指定定点数据的定标方法,以避免发生溢出情况并最大限度地减少量化误差。选择整数会指定定点数据的二进制小数点位置,并将小数长度设置为 0
。有关详细信息,请参阅使用数据类型助手指定数据类型。
依赖关系
要启用此参数,请将模式设置为 Fixed point
。
模块特性
数据类型 |
|
直接馈通 |
|
多维信号 |
|
可变大小信号 |
|
过零检测 |
|
扩展功能
C/C++ 代码生成
使用 Simulink® Coder™ 生成 C 代码和 C++ 代码。
定点转换
使用 Fixed-Point Designer™ 设计和仿真定点系统。
版本历史记录
在 R2010a 中推出
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
选择网站
选择网站以获取翻译的可用内容,以及查看当地活动和优惠。根据您的位置,我们建议您选择:。
您也可以从以下列表中选择网站:
如何获得最佳网站性能
选择中国网站(中文或英文)以获得最佳网站性能。其他 MathWorks 国家/地区网站并未针对您所在位置的访问进行优化。
美洲
- América Latina (Español)
- Canada (English)
- United States (English)
欧洲
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)