Info

이 질문은 마감되었습니다. 편집하거나 답변을 올리려면 질문을 다시 여십시오.

dare works only after ctrbf even though dimension stays the same

조회 수: 1 (최근 30일)
Joe Pearlman
Joe Pearlman 2017년 8월 26일
마감: MATLAB Answer Bot 2021년 8월 20일
I got the symplectic pencil error when using dare to solve a steady state filtering problem. I then used ctrbf to convert to controllable form, but as I expected, the dimension of the system remained unchanged. However the output matrices were different, and when I used these for dare, I obtained a solution. The same thing happened when I used the matrices from obsvf. In both cases when dare obtained a solution, there no peculiar large numbers, so why couldn't dare solve with my original matrices?

답변 (1개)

Sudarshan Kolar
Sudarshan Kolar 2017년 8월 28일
Hi Joe,
One thing you can try is this:
[x,l,g,report] = dare(A,B,Q,R);
Refer the report and see what it returns.
If the 'report' is -1, it is likely that the eigenvalues of the symplectic pencil are close to the unit circle. As mentioned in the documentation of the 'dare' function, for the 'dare' to work, no eigenvalues should be lie on the unit circle.
Also, I would recommend checking other requirements for using 'dare'like:
1. (A,B) must be stabilizable. 2. [Q S;S' R] > 0
The reason Abar, Bbar might be working with 'dare' is you are still using original Q and R. These matrices need transformation too after you have transformed the original state space.
Qbar = T' * Q * T (given: xbar = T * x)
If this does not help either, please check the controllability of your system and paste your A and B matrix in the comments.
Sudarshan

태그

Community Treasure Hunt

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

Start Hunting!

Translated by