How to solve the riccati equations in matlab

2 vues (au cours des 30 derniers jours)
hsuan wei pan
hsuan wei pan le 30 Août 2020
Commenté : hsuan wei pan le 2 Sep 2020
我想設計一個LTR觀察器,但是首先我需要求解類似這樣的黎卡提方程:“ Q *(A + I)'+(A + I)* Q-(Q * C'* C * Q / u)+ pi * G * G'“來獲得” Q“,我已經知道” u“” pi“和” A“” C“” G“向量。有人可以告訴我該怎麼做嗎?謝謝!!

Réponse acceptée

David Wilson
David Wilson le 2 Sep 2020
Well, if Google translate is accurate, you seem to want to solve
for the matrix Q. I'm assuming that everything is a matrix with the appropriate dimensions, and that u is a scalar (going by the way you have written this.)
Now the function are.m, (not care.m, since that has been depreciated), solves
for matrix X. Note that this is in the same form as what you have, but of course you need some "translation" from your nomenclature, to Matlab's. In other words
your nomenclature Matlab
  1 commentaire
hsuan wei pan
hsuan wei pan le 2 Sep 2020
thank you very much , I think i solved the problem!!
this is my code
tf( [9.86e12 7.862e16 1.865e20 1.05e24 8.063e26 3.374e30 2.268e32 3.481e35], [1 7336 5.912e07 2.581e11 1.068e15 2.797e18 6.708e21 1.011e25 1.199e28 6.47e30 1.395e33 5.364e35]);
[a,b,c,d] = tf2ss([9.86e12 7.862e16 1.865e20 1.05e24 8.063e26 3.374e30 2.268e32 3.481e35], [1 7336 5.912e07 2.581e11 1.068e15 2.797e18 6.708e21 1.011e25 1.199e28 6.47e30 1.395e33 5.364e35]);
I = eye(11);
pi = 1000;
u = 1;
A = (a+I)' ;
B = c' ;
C = pi*b*b' ;
[Q] = care(A,B,C);

Connectez-vous pour commenter.

Plus de réponses (1)

David Wilson
David Wilson le 31 Août 2020
Do you have the control toolbox? I suspect that you could use are.m and related friends.
  1 commentaire
hsuan wei pan
hsuan wei pan le 1 Sep 2020
i think i need to use function "care" but i don't know how to use

Connectez-vous pour commenter.

Catégories

En savoir plus sur MATLAB dans Help Center et File Exchange

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by