Engee 文档

Prelookup

计算要内插的区间数和区间分数。

类型: PreLookup

图书馆中的路径:

/Basic/Lookup Tables/Prelookup

说明

区间 Prelookup 为区间计算一个数字和一个分数,定义其输入值 与一组参考点的关系。

程序块 PrelookupInterpolation Using Prelookup 程序块配合使用效果最佳。将生成的数字和分数值输入Interpolation Using Prelookup 程序块,以插值一个 n 维表。这两个程序块采用分布式算法。当它们组合在一起时,执行的操作与程序块n-D Lookup Table 中的集成算法相同。但是,程序块 PrelookupInterpolation Using Prelookup 比块n-D Lookup Table 更灵活,建模和生成代码的效率更高。

支持的程序块操作

要使用程序块 Prelookup 必须指定一组参考点值。您可以选择直接在对话框中指定参考点值,还是通过 bp 输入端口传输参考点值,方法是设置参数 SourceDialog`或 `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 支持的任何数值数据类型的实值信号作为参考点。

依赖关系

要使用此端口,请设置参数 SourceInput port.

数据类型

Float16`,Float32`,Float64`,Int8`,Int16`,Int32`,Int64`,UInt8`,UInt16`,UInt32`,UInt64`,UInt128`。

复数支持

输出

# k — 包含输入信号的区间数 u
标量 | 向量 | 矩阵

Details

是一个实整数,定义了包含输入信号 的区间。

数字从 0 或从 1 开始计数,取决于参数值 Indexing Mode .

数据类型

浮点数 64

复数支持

# f — 代表输入 在区间内的归一化位置的分数
标量 | 向量 | 矩阵

Details

分数 表示输入 在区间 中的归一化位置。

数据类型

Float64`。

复数支持

参数

断点数据

# Source — 参考点的数值来源
Dialog | Input port

Details

基准点的数值来源:

  • Dialog- 参考点值在 价值观 参数中指定。

  • Input port- 参考点值将通过相应的输入点获取。

Dialog | Input port

默认值

Dialog

程序使用名称

BreakpointsDataSource

可调谐

可计算

# Value — 基准
Array of real numbers

Details

参考点。锚点集合必须是一个严格单调递增的矢量,包含两个或多个元素。

依赖关系

要使用该参数,请将参数 SourceDialog.

默认值

10:10:110

程序使用名称

BreakpointsData

可调谐

可计算

# Indexing Mode — 数值参考法
Zero-based indexing | One-based indexing

Details

如果数值设置为 Zero-based indexing,则从 0 开始计数;如果数值设置为 One-based indexing.

Zero-based indexing | One-based indexing

默认值

Zero-based indexing

程序使用名称

IndexingMode

可调谐

可计算

算法

# Output selection — 输出信号
Index and fraction | Index only

Details

可选项

  • Index only- 只输出数字,不输出份额。

  • Index and fraction- 以单独信号输出数字和分数。

Index and fraction | Index only

默认值

Index and fraction

程序使用名称

OutputSelection

可调谐

可计算

# Index search method — 区间数搜索法
Evenly spaced points | Linear search | Binary search

Details

每种搜索方法在不同情况下都有速度优势:

  • 对于均匀分布的锚点(如 10 个、20 个、30 个等),选择表号进行计算可获得最佳速度。 `Evenly spaced points`表号进行计算。这种算法只使用集合中的前两个锚点来确定其余点之间的偏移和距离。

  • 对于非均匀分布的地标点,建议使用该算法:

    • Linear search- 如果 的输入值在各计数步骤之间变化不大。

    • Binary search- 如果 的输入值在每个计数步之间的变化超过一或两个表格间隔。

数字查找方法的次优选择会导致严重依赖查找表的模型性能不佳。

Evenly spaced points | Linear search | Binary search

默认值

Binary search

程序使用名称

IndexSearchMethod

可调谐

可计算

# Extrapolation method — 处理超出范围的输入值的方法
Clip | Linear

Details

程序块用于推断超出参考点数据集范围的所有输入值的方法。

点击此处了解有关外推法的更多信息:函数值近似方法

Clip | Linear

默认值

Linear

程序使用名称

ExtrapMethod

可调谐

可计算

附加选项

C 代码生成: 是