Engee 文档

动态查找表

使用动态表格逼近单变量函数。

类型: Lookup Table Dynamic

图书馆中的路径:

/Basic/Lookup Tables/Lookup Table Dynamic

说明

动态查找表 使用向量 xdatydat 计算函数 的近似值。搜索方法可以使用内插法、外推法或输入数据的原始值。

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

使用块 动态查找表 可以在不停止模拟的情况下更改表格数据。例如,如果模拟的物理系统发生变化,您可以向表中添加新数据。

输入参考点数据和表格数据

xdat` 向量是一个包含锚点值的向量,必须是严格单调递增的。 ydat 向量是表格数据,表示锚点处的函数值。

输入数据 xdatydat 不能是标量(单元素数组)。如果输入标量值,模拟将显示错误信息。

定义查找表

查找表是通过指定输入向量 xdatydat 来定义的。为减少生成代码中的内存使用量,可以为 xdatydat 使用不同的数据类型。

程序块如何计算输出数据

程序块使用输入值计算输出数据,计算方法在参数 查找方法 :

参数值 查找方法 程序块操作

插值-外推法

对输入数据执行线性插值和外推法。

  • 如果输入数据与参考点匹配,输出数据将是数据表中的相应项目。

  • 如果输入数据与参考点不匹配,程序块将在表中的两个项目之间执行线性插值,以计算输出数据。如果输入数据超出基准值范围,程序块将使用前两个点或后两个点进行外推。

插值-使用端值(默认值)

执行线性插值,但不会外推超出参考点的端值。相反,程序块会使用极值。

使用最近输入

查找 xdat 中与当前输入值最近的元素。ydat` 中的相应元素就是输出值。

使用下面的输入

xdat 中查找最接近当前输入值且在其下方的元素。在 ydat 中的相应元素就是输出值。如果 xdat 中没有低于当前输入值的元素,程序块会查找最近的元素。

使用以上输入

查找 xdat 中最接近并高于当前输入值的元素。在 ydat 中的相应元素就是输出值。如果在 xdat 中没有元素高于当前输入值,程序块会查找最近的元素。

方法 使用最近输入, 使用下面的输入`и `使用以上输入`当输入向量 `x 的值与参考点的值重合时,执行相同的操作。

港口

输入

# x — 输入向量
标量` | 向量` | 三维矩阵

Details

实数输入信号。

输入向量 x 和参考点向量 xdat 的符号、偏移量和分数斜率必须相同。此外,x 数据类型的精度和范围必须大于或等于`xdat`的精度和范围。

数据类型

Float32, Float64, Int8, Int16, Int32, Int64, Int128, UInt8, UInt16, UInt32, UInt64, UInt128, Bool, Fixed

复数支持

# xdat — 参考点值向量
n "维数为 1 的严格单调递增值向量 | `矩阵

Details

向量 xdat 是包含参考点值的向量,必须是严格单调递增的。

输入向量 x 和参考点向量 xdat 在符号、偏移和分数斜率方面必须是同一类型。此外,x 数据类型的精度和范围必须大于或等于 xdat 的精度和范围。

数据类型

Float32, Float64, Int8, Int16, Int32, Int64, Int128, UInt8, UInt16, UInt32, UInt64, UInt128, Bool, Fixed

复数支持

# ydat — 表格数据
1乘n的向量

Details

ydat "向量是 上的维数为 1 的实数或复数表格数据向量,表示函数在参考点的值。

数据类型

Float32、Float64、Int8、Int16、Int32、Int64、Int128、UInt8、UInt16、UInt32、UInt64、UInt128、Bool、Fixed。

复数支持

输出

# y — 用动态表逼近 y = f(x)
维数 1 乘 n 的向量

Details

函数近似 ,使用输入的参考点向量 xdat 和表格数据 ydat 。搜索方法可以使用内插法、外推法或输入数据的原始值。

数据类型

Float32, Float64, Int8, Int16, Int32, Int64, Int128, UInt8, UInt16, UInt32, UInt64, UInt128, Bool, Fixed

复数支持

参数

# 查找方法 — 搜索方法
插值-外推法 | 插值-使用端值 | 使用最近输入 | 使用下面的输入 | 使用以上输入

Details

该程序块通过对参考点 xdat 和表格数据 ydat 应用所选方法来计算输出数据。 查找方法 和表格数据 ydat 的输入向量来计算输出数据。详见程序块如何计算输出数据

Interpolation-Extrapolation | Interpolation-Use End Values | Use Input Nearest | Use Input Below | Use Input Above

默认值

Interpolation-Use End Values

程序使用名称

LookUpMeth

可调谐

可计算

信号属性

# 输出数据类型 — 输出数据类型
Float64 | Float32 | Int8 | UInt8 | Int16 | UInt16 | Int32 | UInt32 | Int64 | UInt64 | Int128 | UInt128 | Bool | 定点

Details

指定输出数据类型。

Float64 | Float32 | Int8 | UInt8 | Int16 | UInt16 | Int32 | UInt32 | Int64 | UInt64 | Int128 | UInt128 | Bool | Fixed-point

默认值

Float64

程序使用名称

OutDataTypeStr

可调谐

可计算

# 输出定点型 — 定点输出数据类型
Data type

Details

指定定点输出数据类型。

依赖关系

要使用该选项,请为参数 输出数据类型定点.

默认值

fixdt(1, 16, 0)

程序使用名称

OutDataTypeStrFixed

可调谐

可计算

# 整数舍入模式 — 定点运算的四舍五入模式
天花板 | 收敛 | 地板 | 最近 | 圆形 |

Details

选择定点运算的四舍五入模式。您可以选择

  • 地板- 将正数和负数向下舍入(向负无穷)。

  • 天花板- 将正数和负数向上舍入(向正无穷舍入)。

  • 收敛- 将数字四舍五入到最接近的可表示值。如果数字的小数部分以 5 结尾,则该数字四舍五入为最接近的偶数整数。

  • 最近- 将数字舍入到最接近的可表示值。如果数字的小数部分以 5 结尾,则数字向上舍入(向正无穷)。

  • 圆形- 将数字四舍五入到最接近的可表示值。如果数字的小数部分以 5 结尾,正数向上舍入(向正无穷),负数向下舍入(向负无穷)。

  • - 将数字向 0 舍入。

程序块参数总是四舍五入到最接近的可表示值。

Ceiling | Convergent | Floor | Nearest | Round | Zero

默认值

Floor

程序使用名称

RndMeth

可调谐

可计算

# 发生溢流时,饱和至最大值或最小值 — 溢出时饱和到整数
Logical

Details

如果选中,溢出将饱和到给定数据类型可表示的最大值或最小值。否则,溢出将被包装到数据类型所能表示的适当值。

选中该复选框后,饱和将应用于所有内部块操作,而不仅仅是输出或结果。

默认值

false (关掉)

程序使用名称

DoSatur

可调谐

可计算