主要内容

simsd

用蒙特卡罗方法模拟不确定性线性模型

描述

simsd用蒙特卡罗方法模拟线性模型。该命令使用模型的不确定参数的不同值,以及附加噪声和模拟初始条件的不同实现来执行多个模拟。simsd采用蒙特卡罗技术产生响应不确定性,而sim卡利用高斯近似公式产生不确定度。

例子

simsd (sysudata模拟并绘制识别模型的10种扰动实现的响应sys.仿真输入数据udata用于计算模拟响应。

参数的扰动实现sys与原模型的参数协方差一致,sys.如果sys不包含参数协方差信息,10个模拟响应完全相同。有关如何使用参数协方差信息来生成扰动模型的信息,请参见生成已识别模型的扰动

例子

simsd (sysudataN模拟并绘制N所识别模型的扰动实现sys

例子

simsd (sysudataN选择使用选项集中指定的模拟行为模拟系统响应选择.使用选择指定初始条件中的不确定性,并包括加性扰动的影响。

模拟的响应都是相同的,如果sys不包含参数协方差信息,并且不能为初始状态指定附加噪声或协方差值。属性中指定这些值AddNoise而且X0Covariance选项的选择

例子

y= simsd (___返回N模拟结果y作为单元格数组。不产生模拟响应图。与前面语法中的任何输入参数组合一起使用。

例子

yy_sd= simsd(___还返回估计的标准偏差y_sd对于模拟响应。

例子

全部折叠

加载估计数据。

负载iddata1z1

z1是一个iddata对象,该对象存储输入-输出估计数据。

估计一个三阶状态空间模型。

Sys = sest(z1,3);

利用蒙特卡罗方法和输入估计数据模拟估计模型的响应,并绘制响应图。

simsd (sys z1);

图通过引用先前估计模型的I/O对创建。包含一个轴。标题为模拟输出#1:y1的轴包含11个line类型的对象。这些对象表示y1, Nominal。

蓝线表示原始标称模型的模拟响应sys.绿线表示10种扰动实现的模拟反应sys

使用蒙特卡罗方法对指定数量的模型扰动模拟估计模型。

使用估计数据估计二阶状态空间模型。获得sys在可观测标准形式中。

负载iddata3z3Sys = sest(z3,2,“形式”“规范”);

用蒙特卡罗方法计算估计模型的模拟响应,并绘制响应图。指定随机模型扰动的数量为20。

N = 20;simsd (sys、z3、N)

图通过引用先前估计模型的I/O对创建。包含一个轴。标题为模拟输出#1:y1的轴包含21个line类型的对象。这些对象表示y1, Nominal。

蓝线表示原始标称模型的模拟响应sys.绿线表示20种扰动实现的模拟反应sys

的每一个扰动,也可以得到模拟的响应sys.使用此语法时不会生成任何图形。

y = simsd(sys,z3,N);

y是模拟的响应,返回作为单元格数组N+ 1的元素。y {1}的标称响应sys.的模拟响应N摄动实现。

加载时间序列数据。

负载iddata9z9

z9是一个iddata对象,该对象具有200个输出数据样本且没有输入。

利用最小二乘算法估计六阶AR模型。

Sys = ar(z9,6,“ls”);

对于时间序列数据,指定所需的模拟长度,Ns= 200使用Ns-by-0输入数据集。

data = iddata([], 0 (200,0),z9.Ts);

设置初始条件,将时间序列的初始样本作为历史输出样本。过去的数据分别映射到每个扰动系统的初始状态。

IC = struct(“输入”[],“输出”z9.y (1:6));opt = simsdOptions(“InitialCondition”、集成电路);

采用蒙特卡罗方法和指定的初始条件对模型进行模拟。指定随机模型扰动的数量为20。

20岁的simsd(系统、数据选择)

图通过引用先前估计模型的I/O对创建。包含一个轴。标题为模拟输出#1:y1的轴包含21个line类型的对象。这些对象表示y1, Nominal。

蓝线表示原始标称模型的模拟响应sys.绿线表示20种扰动实现的模拟反应sys

加载数据,并将其拆分为估计数据和模拟数据。

负载iddata3Ze = z3(1:200);Zsim = z3(201:256);

估计一个二阶状态空间模型sys使用估计数据。指定不生成参数协方差数据。获得sys在可观测标准形式中。

opt = ssestOptions(“EstimateCovariance”、假);Sys = sest(ze,2,“形式”“规范”、选择);

设置模拟估计模型的初始条件。指定初始状态值x0对于两个状态和初始状态值的协方差x0Cov.协方差被指定为2 × 2矩阵,因为有两种状态。

X0 = [1.2;-2.4);x0Cov = [0.86 -0.39;-0.39 - 1.42);opt = simsdOptions(“InitialCondition”x0,“X0Covariance”, x0Cov);

采用蒙特卡罗方法和指定的初始条件对模型进行模拟。指定随机模型扰动的数量为100。

simsd (sys zsim 100,选择)

图通过引用先前估计模型的I/O对创建。包含一个轴。标题为模拟输出#1:y1的轴包含101个line类型的对象。这些对象表示y1, Nominal。

蓝线表示原始标称模型的模拟响应sys.绿线表示100个扰动实现的模拟响应sys.该软件使用初始状态的不同实现来模拟每个扰动模型。初始状态是从具有均值的高斯分布中得到的InitialCondition和协方差X0Covariance

加载估计数据。

负载iddata1z1

z1是一个idddata对象,该对象存储300个输入输出估计数据样本。

使用估计数据估计一个二阶状态空间模型。

Sys = sest(z1,2);

为创建默认选项集simsd,并修改选项集以添加噪声。

opt = simsdOptions;opt.AddNoise = true;

用蒙特卡罗方法计算估计模型的模拟响应。指定随机模型扰动的数量为20,并使用指定的选项集模拟模型。

[y,y_sd] = simsd(sys,z1,20,opt);

y模拟响应,作为包含21个元素的单元格数组返回。y {1}的标称无噪声响应sys.其余元素包含20个扰动实现的模拟响应sys在每个响应中添加附加干扰。

y_sd是模拟响应的估计标准偏差,返回为iddata对象,没有输入。从21个模拟输出中计算出标准偏差。要访问标准偏差,使用y_sd。OutputData

输入参数

全部折叠

要模拟的模型,指定为以下参数线性识别模型之一:idtfidprocidpoly中的难点,或idgrey

为了生成一组模拟响应,该软件扰动的参数sys以一种与参数协方差信息一致的方式。使用getcov的参数不确定度sys.有关如何生成扰动模型的信息sys,请参阅rsample

模拟的响应都是相同的,如果sys不包含参数协方差信息,并且不能为初始状态指定附加噪声或协方差值。属性中指定这些值AddNoise而且X0Covariance选项的选择

模拟输入数据,指定为下列之一:

  • iddataobject -输入数据可以是时域的,也可以是频域的。该软件只使用的输入通道iddata对象。

    如果sys一个时间序列模型,即一个没有输入的模型,是指定的吗udata作为一个Ns-by-0信号,其中Ns每一个的模拟输出样本的数量是多少N不安的意识sys.例如,要模拟100个输出示例,请指定udata如下。

    data = iddata([], 0 (100,0),Ts);

    有关示例,请参见用蒙特卡罗方法模拟时间序列模型

  • 矩阵-用于仅使用时域数据模拟离散时间系统。矩阵的列对应于每个输入通道。

如果你没有实验数据,请使用idinput产生具有各种特性的信号。

的扰动实现数sys要进行模拟,指定为正整数。

用于使用蒙特卡罗方法模拟模型的仿真选项,指定为simsdOptions选项设置。您可以使用此选项集指定:

  • 输入和输出信号偏移量-指定要从输入信号中删除的偏移量和要添加到响应中的偏移量sys

  • 初始条件处理——指定模拟的初始条件及其协方差。对于状态空间和线性灰盒模型(中的难点而且idgrey),若要模拟初始状态下不确定性的影响,请设置InitialCondition属性指定其协方差X0Covariance选择。有关示例,请参见初始条件不确定性对模型响应的影响研究

  • 向模拟数据添加噪声-如果要包括添加性扰动的影响,请指定AddNoise选择真正的.有关示例,请参见研究加性扰动对响应不确定性的影响

输出参数

全部折叠

模拟响应,返回为单元格数组N+ 1的元素。y {1}的标称响应sys.的模拟响应N摄动实现。

该命令使用模型的不确定参数的不同值,以及附加噪声和模拟初始条件的不同实现来执行多个模拟。因此,模拟的响应都是相同的sys不包含参数协方差信息,并且您没有为初始状态指定附加噪声和协方差值选择

模拟响应的估计标准偏差,返回为iddata对象。的样本标准差计算y整体:

y _ 年代 d 1 N 2 N + 1 y 1 y 2

在这里y {1}名义响应是为了sys,y {}i = 2:N+1的模拟响应N不安的意识sys

更多关于

全部折叠

生成已识别模型的扰动

软件生成N所识别模型的扰动sys然后模拟这些扰动的响应。参数的扰动实现sys是否与原模型的参数协方差一致sys.的参数协方差sys给出有关参数分布的信息。然而,对于某些参数值,所得到的扰动系统可能是不稳定的。为了降低不现实系统产生的概率,软件对参数协方差进行了预估。

如果Δp参数是参数的协方差吗psys,则模拟输出f (p +Δp)摄动模型的一阶近似为:

f p + Δ p f p + f p Δ p

simsd命令优先级Δp通过一个比例因子年代(约0.1%)来生成带参数的摄动系统(p + sΔp).然后该命令进行计算f (p + sΔp),即这些扰动系统的模拟响应。在那里,

f p + 年代 Δ p f p + 年代 f p Δ p

然后,该命令计算模拟响应f (p +Δp)为:

f p + Δ p f p + 1 年代 f p + 年代 Δ p f p

请注意

的自由延迟不应用此缩放idprocidtf模型。

如果您指定AddNoise选择simsdOptions作为真正的,该软件在扰动系统的无噪声响应中加入了不同的噪声序列实现。噪声序列的实现与模型的噪声分量一致。

对于状态空间模型,如果指定初始状态值的协方差X0Covariance选择simsdOptions,采用初始状态的不同实现来模拟每个扰动模型。初始状态是从具有均值的高斯分布中得到的InitialCondition和协方差X0Covariance

R2006a之前介绍