How to estimate state space model and designate matrix C=1 or [1, 0]?

3 ビュー (過去 30 日間)
Jianning Cui
Jianning Cui 2021 年 4 月 20 日
コメント済み: Jianning Cui 2021 年 4 月 23 日
I want to use some data to estimate a state space model of a dynamical system. I know I can use ssest command. Yet when I am using it, it returns model with very extrange C matrix very far from 1 or [1 0] (like C=15.6438 or C=[18.72 7.32], etc.). Yet I know from its characteristic that the dynamical system I want to identify has a trivial C matrix C=1 or C=[1 0]. Is there a way to designate the C matrix to be 1 or [1 0] when using ssest command to estimate the dynamical system? Or are there methods other than ssest to estimate the state space model of a dynamical system?

採用された回答

Clayton Gotberg
Clayton Gotberg 2021 年 4 月 20 日
You are able to tell ssest which canonical form you expect the output to be in using the 'Form' option.
Ex:
ssest(data,order,'Form','companion') % sets to companion canonical form
You can also convert the system later using the canon function.
The documentation for canon explains what waht each canonical form is called in MATLAB.

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeLinear Model Identification についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by