Prelookup
计算要内插的区间数和区间分数。
类型: PreLookup
图书馆中的路径:
|
说明
区间 Prelookup 为区间计算一个数字和一个分数,定义其输入值 与一组参考点的关系。
程序块 Prelookup 与Interpolation Using Prelookup 程序块配合使用效果最佳。将生成的数字和分数值输入Interpolation Using Prelookup 程序块,以插值一个 n 维表。这两个程序块采用分布式算法。当它们组合在一起时,执行的操作与程序块n-D Lookup Table 中的集成算法相同。但是,程序块 Prelookup 和Interpolation Using Prelookup 比块n-D Lookup Table 更灵活,建模和生成代码的效率更高。
支持的程序块操作
要使用程序块 Prelookup 必须指定一组参考点值。您可以选择直接在对话框中指定参考点值,还是通过 bp 输入端口传输参考点值,方法是设置参数 Source 值 Dialog`或 `Input port
.
通常,参考点数据集对应于块Interpolation Using Prelookup 中表格数据的一个维度。
程序块 Prelookup 通过计算为每个输入值生成一对输出 :
-
其值小于或等于 并构成包含 的区间的参考点编号。
-
该区间在 范围内的分数(fraction),代表 在带有找到的编号的参考点和下一个参考点之间的区间内的归一化位置。
根据参数值的不同,数字从 0 或从 1 开始计数。 Indexing Mode :
-
Zero-based indexing
- 参考点索引从0
开始。例如:如果参考点集合为[0 5 10 20 50 100]
,而 的输入值为55
,则数字为4
,间隔分数为0.1
。 -
One-based indexing
- 参考点的索引从1
开始。例如:如果参考点集为[0 5 10 20 50 50 100]
,且 的输入值为55
,则数字为5
,间隔分数为0.1
。
如果输入信号超出范围,区间分数可能为负数或大于 1
。
端口
输入
#
u
—
输入信号 u
矢量
Details
块 Prelookup 接受 Engee 支持的除 Bool
以外的任何数字数据类型的实值信号。
数据类型 |
Float16`、Float32`、Float64`、Int8`、Int16`、Int32`、Int64`、UInt8`、UInt16`、UInt32`、UInt64`、UInt128`。 |
复数支持 |
无 |
#
u
—
输入信号 u
标量 | 向量 | 矩阵
Details
块 Prelookup 接受 Engee 支持的除 Bool
以外的任何数值数据类型的实值信号。
数据类型 |
Float16`、Float32`、Float64`、Int8`、Int16`、Int32`、Int64`、UInt8`、UInt16`、UInt32`、UInt64`、UInt128`。 |
复数支持 |
无 |
#
bp
—
参考点
`向量
Details
块 Prelookup 接受除 Bool
以外的 Engee 支持的任何数值数据类型的实值信号作为参考点。
依赖关系
要使用此端口,请设置参数 Source 值 Input port
.
数据类型 |
Float16`,Float32`,Float64`,Int8`,Int16`,Int32`,Int64`,UInt8`,UInt16`,UInt32`,UInt64`,UInt128`。 |
复数支持 |
无 |
参数
断点数据
#
Source —
参考点的数值来源
Dialog
| Input port
Details
基准点的数值来源:
-
Dialog
- 参考点值在 价值观 参数中指定。 -
Input port
- 参考点值将通过相应的输入点获取。
值 |
|
默认值 |
|
程序使用名称 |
|
可调谐 |
无 |
可计算 |
无 |
#
Value —
基准
Array of real numbers
Details
参考点。锚点集合必须是一个严格单调递增的矢量,包含两个或多个元素。
依赖关系
要使用该参数,请将参数 Source 值 Dialog
.
默认值 |
|
程序使用名称 |
|
可调谐 |
是 |
可计算 |
是 |
#
Indexing Mode —
数值参考法
Zero-based indexing
| One-based indexing
Details
如果数值设置为 Zero-based indexing
,则从 0 开始计数;如果数值设置为 One-based indexing
.
值 |
|
默认值 |
|
程序使用名称 |
|
可调谐 |
无 |
可计算 |
无 |
算法
#
Output selection —
输出信号
Index and fraction
| Index only
Details
可选项
-
Index only
- 只输出数字,不输出份额。 -
Index and fraction
- 以单独信号输出数字和分数。
值 |
|
默认值 |
|
程序使用名称 |
|
可调谐 |
无 |
可计算 |
无 |
#
Index search method —
区间数搜索法
Evenly spaced points
| Linear search
| Binary search
Details
每种搜索方法在不同情况下都有速度优势:
-
对于均匀分布的锚点(如 10 个、20 个、30 个等),选择表号进行计算可获得最佳速度。 `Evenly spaced points`表号进行计算。这种算法只使用集合中的前两个锚点来确定其余点之间的偏移和距离。
-
对于非均匀分布的地标点,建议使用该算法:
-
Linear search
- 如果 的输入值在各计数步骤之间变化不大。 -
Binary search
- 如果 的输入值在每个计数步之间的变化超过一或两个表格间隔。
-
数字查找方法的次优选择会导致严重依赖查找表的模型性能不佳。
值 |
|
默认值 |
|
程序使用名称 |
|
可调谐 |
无 |
可计算 |
无 |