# How to solve the riccati equations in matlab

2 views (last 30 days)
hsuan wei pan on 30 Aug 2020
Commented: hsuan wei pan on 2 Sep 2020

David Wilson on 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
hsuan wei pan on 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);

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

### Categories

Find more on Matrix Computations in Help Center and File Exchange

### Community Treasure Hunt

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

Start Hunting!