主要内容

模型阵列

什么是模型数组?

在许多应用程序中,考虑多个模型对象的集合是很有用的。例如,您可能希望考虑一个模型,其参数在一个值范围内变化,例如

Sys1 = tf(1, [1 1 1]);Sys2 = tf(1, [1 1 2]);Sys3 = tf(1, [1 1 3]);

等等。模型数组是存储和分析此类集合的方便方法。模型数组是多个线性模型的集合,存储为单个MATLAB中的元素®数组中。

对于一个模型数组中收集的所有模型,以下属性必须相同:

  • 输入和输出的数量

  • 采样时间Ts

  • 时间单位TimeUnit

模型数组的使用

模型数组的用途包括:

  • 表示和分析参数变化的敏感性

  • 针对多个工厂模型验证控制器设计

  • 表示非线性系统在几个工作点上的线性化所产生的线性模型

  • 存储从应用于一个工厂的多个系统识别实验中获得的模型

使用模型数组,您可以将几乎所有在单个模型对象上工作的基本模型操作一次应用到整个模型集。函数逐个模型对数组进行操作,允许您以向量化的方式操作整个模型集合。您还可以使用分析函数,例如波德尼奎斯特,一步对数组建模以同时分析多个模型。您可以通过MATLAB数组索引访问集合中的各个模型。

可视化模型数组

为了使模型数组的概念可视化,考虑下面所示的五个传递函数模型集。在本例中,每个模型有两个输入和两个输出。它们因单个模型组件中的参数变化而不同。

就像你可以在多维数组中收集一组2乘2的矩阵一样,你可以在一个变量名下将这组5个传递函数模型收集为模型数组中的列表,比如,sys.模型数组的每个元素都是一个模型对象。

从模型数组中可视化选择模型

下图显示了索引如何从一维模型数组中选择模型。该图显示了一个1 × 5的数组sysa2输入2输出的传递函数。

下图显示了从二维模型数组中选择的模型m2d

相关的话题

Baidu
map