Linearizing with trim from command line: OP seems to equal initial conditions
1 回表示 (過去 30 日間)
古いコメントを表示
I have a model with 259 states (integrators). If I trim and linearize the model via command line and require all states to be at steady state (dx = 0), then it works perfectly fine and I get a linsys with a system matrix A [259 x 259]. However, if I only require the last state to be steady (which might happen earlier then when I wait for all states to become steady), it runs just fine, however I get a 258x258 Matrix and it seems to have taken the initial condition as operating point. Anyone got a clue why this might happen?
Here is a code snippet of the commands I am using, with a predefined string for 'mdl'.
opspec = operspec(mdl);
for i = 1:length(opspec.States)
len = opspec.States(i).Nx;
opspec.States(i).SteadyState = boolean(zeros(1,len));
end
opspec.States(end).SteadyState = boolean([1 1]);
op = findop(mdl,opspec);
[mynewlinsys,linop] = linearize(mdl,io,op);
0 件のコメント
回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Operating Points についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!