I am trying to solve a Continuous-time Algebraic Riccati Equation using the CARE function in the Control Systems Toolbox. I use the form:
[X,L,G] = care(A,B,Q,R,S,E)
specifying the A,B,Q,R,S and E matrices. In the documentation for the CARE function, it mentions the condition R > 0 for the A-B system to be stabilizable and hence for the existence of a solution to the Riccati equation.
Theoretically, there can be cases where R is singular and yet there is a solution to the Ricatti equation. But in the code of the CARE function, there is a check for singularity of R and the function gives an error if R is singular.
Why is the singularity condition not specified in the documentation and how do I solve the Ricatti equation for a singular R?
Best Answer