n-step prediction in simulink

1 view (last 30 days)
LEI CAO
LEI CAO on 10 Apr 2012
I have a idss model whose focus is prediction. It is not a good-enough model to be used for simulation. It is easy to get the n-step prediction output in ident GUI. Is it possible to do that in simulink?

Answers (1)

Rajiv Singh
Rajiv Singh on 12 Oct 2012
Edited: Rajiv Singh on 12 Oct 2012
You will need to implement a predictor model in Simulink. You can "convert" an estimated idss model into a predictor model. Suppose sys is the estimated idss model. Then you can create a one-step ahead predictor model as follows:
[a,b,c,d] = ssdata(sys);
sysp = idss([a-k*c],[k b-k*d],c,[zeros(ny), d],'ts',sys.Ts, 'NoiseVariance', sys.NoiseVariance);
where ny = number of outputs and nu = number of inputs of original model sys. sysp is a model with nu+ny inputs and ny outputs. The input to be used for simulation of sysp must be [y, u], where y is the measured output data (ny columns) and u is the measured input data (nu columns) that you want to use for prediction.
For an arbitrary horizon, construction of "sysp" would not be so straight-forward. Look up the PREDICT command which returns sysp as its 3rd output argument. See:

Community Treasure Hunt

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

Start Hunting!