选择查找表的指导方针
数据集维度
在某些情况下,数据集的维度决定了哪个查找表块适合应用程序。如果您正在逼近一个一维函数,请考虑使用一维查找表或动态查找表块。如果您正在逼近一个二维函数,请考虑二维查找表块。块,例如n-D查找表而且直接查表(n-D)允许你近似一个函数N变量。
数据集数值和数据类型
数据集的数值和数据类型会影响查找表块最合适的决定。虽然所有查找表块都支持实数,但是万博1manbetx直接查表(n-D),一维查找表,二维查找表,n-D查找表块还支持复杂的表数据。万博1manbetx所有查找表块都支持整数和定点数据万博1manbetx双
而且单
数据类型。
请注意
对于直接查找表(Direct Lookup Table, n-D)块,表数据、输出端口和可选表输入端口支持定点类型。万博1manbetx
数据的准确性和平滑性
查找表返回的数据所需的准确性和平滑性决定了应该使用哪些块。大多数块提供执行插值和外推的选项,分别提高位于表数据之间或表数据之外的值的准确性。例如,动态查找表块执行线性插值和外推,而n-D查找表块执行线性或三次样条插值和外推。相比之下,直接查表(n-D)Block执行表查找,不需要任何插值或外推。方法可以实现插值和外推方法的混合Prelookup用使用预查找的插值块。
表格输入的动态
查找表输入的动态会影响哪个查找表块最适合您的应用程序。这些块使用各种索引搜索方法将查找表输入与表的断点数据集关联起来。大多数查找表块提供了二进制搜索算法,如果输入从一个时间步骤到下一个时间步骤有显著变化,则该算法性能良好。的一维查找表,二维查找表,n-D查找表,Prelookup块提供了一种线性搜索算法。如果输入变化缓慢,使用该算法和从以前的结果恢复搜索的选项会表现良好。一些查找表块还提供了一种搜索算法,该算法最适用于由均匀间隔的断点组成的断点数据集。方法可以实现多种索引搜索方法的组合Prelookup用使用预查找的插值块。
绩效效率
查找表的操作效率很重要时,可以考虑使用Prelookup用使用预查找的插值块。这些块将表查找过程分为两个部分——将输入与表数据关联起来的索引搜索,接着是计算输出的插值和外推阶段。这些块使您能够执行单个索引搜索,然后重用结果以查找多个表中的数据。此外,使用预查找的插值Block可以执行子表选择,其中块插入表数据的一部分,而不是整个表。例如,如果您的3-D表数据构成了一个要插值的2-D表的堆栈,您可以指定一个选择端口输入,以从堆栈中选择一个或多个2-D表进行插值。全三维插补有7个子插补,而二维插补只需要3个子插补。因此,当表的某些维度用于数据堆叠而不是用于插值时,可以显著提高速度。这些特性使表查找操作更加高效,减少了计算工作量和模拟时间。
查找表块特征摘要
使用下表确定与特定查找表块对应的特性,然后选择最符合您要求的块。
功能 | 一维查找表 | 二维查找表 | 动态查找表 | n-D查找表 | 直接查表(n-D) | Prelookup | 插值函数。使用Prelookup |
---|---|---|---|---|---|---|---|
插值方法 | |||||||
平 | • | • | • | • | • | • | • |
线性 | • | • | • | • | • | • | |
三次样条 | • | • | • | ||||
外推方法 | |||||||
剪辑 | • | • | • | • | • | • | • |
线性 | • | • | • | • | • | • | |
三次样条 | • | • | • | ||||
数字和数据类型支持万博1manbetx | |||||||
复杂的 | • | • | • | • | |||
双、单 | • | • | • | • | • | • | • |
整数 | • | • | • | • | • | • | • |
不动点 | • | • | • | • | • | • | • |
索引检索方法 | |||||||
二进制 | • | • | • | • | • | ||
线性 | • | • | • | • | |||
等距点 | • | • | • | • | • | ||
从上一个索引开始 | • | • | • | • | |||
杂项 | |||||||
子表的选择 | • | • | |||||
动态断点数据 | • | ||||||
动态表数据 | • | • | • | ||||
输入范围检查 | • | • | • | • | • | • |