Performing a model order reduction including initial conditions

3 visualizzazioni (ultimi 30 giorni)
I've been attempting to reduce the order of a state space model, for example:
sys=ss(A,B,C,D)
sys_reduced=reduce(sys,10)
which works fine, but does anyone know how to calculate the initial conditions for this reduced system (assuming the initial system had initial conditions)
  2 Commenti
Richard
Richard il 18 Lug 2012
To answer my own question:
The function [ModelNew,g,T,Ti]=balreal(modelOld) gives a new model which has as many states as the old model BUT they are in decending order of importance. It also gives g which shows how important each state is and T which transforms the old model into the new WHICH CAN ALSO BE USED TO TRANSFORM THE INITIAL CONDITIONS, Ti is the reverse transform
newIntialConditions=T*OldIntialConditions;
modred can then be used to reduce the model order to whatever you want
ReducedModel=modred(BallencedModel,ReduceStatesTo:NumberOfStatesInOldModel);
The initial conditions must of course also be trimmed to the right number of states
Kaustubha Govind
Kaustubha Govind il 18 Lug 2012
Richard: Thanks for coming back to the forum with your answer. Could you perhaps post this as an answer instead of as a comment. Feel free to accept your own answer.

Accedi per commentare.

Risposta accettata

Richard
Richard il 26 Feb 2013
To answer my own question:
The function [balancedModel,g,T,Ti]=balreal(modelOld) gives a new model which has as many states as the old model BUT they are in decending order of importance. It also gives g which shows how important each state is and T which transforms the old model into the new WHICH CAN ALSO BE USED TO TRANSFORM THE INITIAL CONDITIONS, Ti is the reverse transform
newIntialConditions=T*OldIntialConditions;
modred can then be used to reduce the model order to whatever you want
ReducedModel=modred(ballancedModel,ReduceStatesTo:NumberOfStatesInOldModel);
The initial conditions must of course also be trimmed to the right number of states

Più risposte (0)

Categorie

Scopri di più su Dynamic System Models in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by