隐式创建包含回归组件的状态空间模型

这个例子展示了如何隐式地创建一个状态空间模型,该模型在观察方程中包含一个回归组件。状态模型是ARMA(1,1)。

写一个函数来指定参数如何参数个数映射到状态空间模型矩阵、初始状态值和状态类型。通过缩小函数内的观察值来指定回归组件。象征性地,模型是:

数组$ $ \开始{}{1}& # xA;左\[{\开始数组{}{* {20}{c}} & # xA;{{间{1,t}}} \ \ & # xA;{{间{2,t}}} & # xA;结束\{数组}}\右]左= \[{\开始数组{}{* {20}{c}} & # xA;{{\φ_1}}和{{\θ_1}}\ \ & # xA; 0 & # 38; 0 & # xA;结束\{数组}}\右]\离开[{\开始{数组}{* {20}{c}} & # xA;{{间{1,t - 1}}} \ \ & # xA;{{间{2,t - 1}}} & # xA;结束\{数组}}\右]+左\ [数组{\开始{}{* {20}{c}} & # xA;{{\σ_1}}\ \ & # xA; 1 & # xA;结束\{数组}}\右]{u_ t} {1} \ \ & # xA; {y_t} -β\ {z_t} ={间{1,t}} +{\σ_2}{\ varepsilon _t} # xA;公司\{数组}$ $

%版权所有The MathWorks, Inc.函数[A, B, C, D, Mean0 Cov0, StateType, DeflateY] = regressionParamMap (params, y, z)带有回归组件参数映射函数的状态空间模型%的例子。这个函数将向量参数映射到状态空间矩阵% (A, B, C, D),初始状态值和初始状态方差% (Mean0和Cov0)和状态类型(StateType)。状态模型为%的ARMA(1,1)。varu1 = exp (params (3));正方差约束vare1 = exp (params (4));A = [params(1) params(2);0 0];B = [sqrt (varu1);1);C = [10 0];D =√vare1);Mean0 = [0.5 0.5];Cov0 =眼(2);stateltype = [0 0]; DeflateY = y - params(5)*z;结束

将此代码保存为一个名为regressionParamMap在MATLAB®路径上。

通过传递函数来创建状态空间模型regressionParamMap的函数句柄舰导弹

Mdl =舰导弹(@ (params) regressionParamMap (params, y, z));

舰导弹隐式地创建状态空间模型。通常,您不能验证隐式定义的状态空间模型。

在创建模型之前,确保数据yz存在于你的工作空间中。

另请参阅

||

相关的例子

更多关于