基于Matlab的ARMA模型时间序列分析法仿真
ARMA模型时间序列分析法简称为时序分析法,是一种利用参数模型对有序随机振动响应数据进行处理,从而进行模态参数识别的方法。参数模型包括AR自回归模型、MA滑动平均模型和ARMA自回归滑动平均模型。1969年Akaike H首次利用自回归滑动平均ARMA模型进行了白噪声激励下的模态参数识别。 N个自由度的线性系统激励与响应之间的关系可用高阶微分方程来描述,在离散时间域内,该微分方程变成由一系列不同时刻的时间序列表示的差分方程,即ARMA时序模型方程:
k02Nakxtkbkftk (1)
k02N 式(1)表示响应数据序列xt与历史值xtk的关系,其中等式的左边称为自回归差分多项式,即AR模型,右边称为滑动平均差分多项式,即MA模型。2N为自回归模型和滑动均值模型的阶次,ak、bk分别表示待识别的自回归系数和滑动均值系数,ft表示白噪声激励。当k=0时,设a0b01。 由于ARMA过程{xt}具有唯一的平稳解为
xthifti (2)
i0式中:hi为脉冲响应函数。 xt的相关函数为
RE[xtxt]i0k0hihkE[ftiftk] (3)
ft是白噪声,故
2kiE[ftiftk] (4)
0other式中:2为白噪声方差。
将此结果代人式(3),即可得
R2i0hihi (5)
因为线性系统的脉冲响应函数hi,是脉冲信号,激励该系统时的输出响应,故由ARMA过程定义的表达式为
k02Nakhtkbktkbt (6)
k02N2N 利用式(5)和式(6),可以得出:
k02NakRlkhiakilki0k02i0hibil (7)
对于一个ARMA过程,当是大于其阶次2N时,参数bk=0。故当l>2N时,式(7)恒等于零,于是有
-1
- 好好学习,天天向上
RiakRlk0,l2N (8)
k02N或写成
k02NakRlkRi,l2N (9)
设相关函数的长度为L,并令M=2N。对应不同的l值,由代人以上公式可得一组方程:
a1RMa2RM1aMR1RM1aR1M1a2RMaMR2RM2 (10) aRaRaR2L2MLMRL1L1将式(10)方程组写成矩阵形式,则有
RMRM1R1a1RM1RaRRRM2M1M22 (11) RRRL2LMaML1RL或缩写为
[R](LM)M{a}M1{R}(LM)1 (12)
式(12)为推广的Yule-walker方程。一般情况下,由于L比2N大得多,采用伪逆法可求得方程组的最小二乘解,即
{a}([R]T[R])1([R]T{R}) (13)
由此求得自回归系数ak(k1,2,,2N)。
滑动平均模型系数bk(k1,2,,2N)可通过以下非线性方程组来求解:
2b02b12bMc0b0b1bM1bMc1 (14)
b0bMcM其中
cki02Nj02NaiajCkij,k0,1,2,,2N (15)
式中:Ck为响应序列xt的自协方差函数。
滑动平均模型MA系数bk的估算方法很多,主要的有基于Newton-Raphson算法的迭代最优化方法和基于最小二乘原理的次最优化方法。 当求得自回归系数ak和滑动均值系数bk后,可以通过ARMA模型传递函数的表达式计算系统的模态参数,ARMA模型的传递函数为
H(z)k0k02N2Nbkzk (16)
akzk用高次代数方程求解方法计算分母多项式方程的根:
-2
- 好好学习,天天向上
k02Nakzk1a1za2z2a2Nz2N0 (17)
或表示成以下形式的方程:
z2Na1z2N1a2N1za2N0 (18)
求解得到的根为传递函数的极点,它们与系统的模态频率k,和阻尼比k的关系为
2zkexp(skt)exp[(kkjk1k)t] (19) 2zkexp(skt)exp[(kkjk1k)t]并且由式(19)可求得模态频率k,和阻尼比k,即
Rklnzksktkr|Rk|/t (20) 1k21(Im(R)/Re(R))kk为计算模态振型,需要先求出留数。设q点处激励p点响应的传递函数Hpq(s)的第是阶留数为Akpq,可用下式计算留数:
AkpqlimHpq(z)(zzk)zzkk0k02N2Nbkzk(zzk)akzkzzk (21)
振型向量可以通过对一系列响应测点求出的留数处理得到。对于一个有n个响应测点的结构,首先需要从n个对应同一阶模态的留数中找出绝对值最大的测点,假设该点是测点m,对应第k阶模态的归一化复振型向量可由下式求出:
{k}[Ak1qAk2qAknq]T/Akmq (22)
-3
因篇幅问题不能全部显示,请点此查看更多更全内容