Performing a model order reduction including initial conditions

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 件のコメント

Richard
Richard 2012 年 7 月 18 日
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 2012 年 7 月 18 日
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.

サインインしてコメントする。

 採用された回答

Richard
Richard 2013 年 2 月 26 日

1 投票

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

その他の回答 (0 件)

カテゴリ

ヘルプ センター および File ExchangeRobust Control Toolbox についてさらに検索

質問済み:

2011 年 9 月 19 日

Community Treasure Hunt

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

Start Hunting!

Translated by