MATLAB Answers

estimation of markov parameter by recursive least square method

13 views (last 30 days)
Nehul Thakkar
Nehul Thakkar on 15 Feb 2011
Answered: k k d on 30 Apr 2019
I have to estimate Markov parameter recursively. Markov Parameters are defined by h0 = D, hi = C*Ae(i-1)*B , A,B,C,D are state-space matrices.
I have input signal u = idinput(8191,'prbs'), Gs = 2/s2+3s+2 Genertae Output Y = lsim(G,u,t)
Now How can I estimate Markov Parameter????????

Answers (2)

Rajiv Singh
Rajiv Singh on 12 Mar 2011
Would something like this work? z = iddata(Y,u, t(2)-t(1)); m = n4sid(z,2); h = impulse(m)

k k d
k k d on 30 Apr 2019
% G(s)=(s+4)/(s^3+6s^2+11s+6) Example from 'Modeling and identification of
% dynamic sysytem' by Sinha and Kuszta [Page-142]
clc
clear all
s=tf('s');
num=[10 50 200 400]; % Enter numerater coefficients from highest power of s
den=[1 33 292 660 400]; % Enter denomerater coefficients from highest power of s
G=tf(num,den)
[num,den]=tfdata(G,'v');
numf=fliplr(num) ; % For Time-moment
denf=fliplr(den) ; % For Time-moment
N=7 ; % N is number of parameters required
for i=1:N
numf=[numf 0]; % For Time-moment
TimeMoments=deconv(numf,denf); % For Time-moment
num=[num 0]; % For Markov Parameters
MarkovParameter=deconv(num,den); % For Markov Parameters
end
TimeMoments
MarkovParameter

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by