LinearAlgebra
CARE
solves the continuous algebraic Riccati equation
Calling Sequence
Parameters
Options
Description
Examples
CARE(A, B, Q, R, S, options, outopts)
A
-
Matrix(square)
B
Matrix
Q
R
(optional) Matrix(square)
S
(optional) Matrix
options
(optional) constructor options for the result objects and/or equation(s) of the form keyword = value, where keyword is one of haveB or output
outopts
(optional) equation(s) of the form outputoptions[o] = list, where o is one of X, L or G
haveB=true or false
Specifies whether the second Matrix argument should be interpreted as B (true) or as G (false) in G=B·R-1·B+ . The default value is true.
output=value
Specifies which results are returned, where value can be a single name or a list of names. The choices of names for value are
X - the Matrix which solves the equation
L - the Vector of closed-loop eigenvalues of the symplectic Matrix H
rcond - the reciprocal of the condition number of the system solved by X
G - the gain Matrix, where G=R-1·B+ ·X+S+ .
The default returned object is X.
The constructor options provide additional information (readonly, shape, storage, order, datatype, and attributes) to the Matrix or Vector constructor that builds the result(s). These options may also be provided in the form outputoptions[o]=[...], where [...] represents a Maple list. If a constructor option is provided in both the calling sequence directly and in an outputoptions[o] option, the latter takes precedence (regardless of the order).
The CARE command solves the continuous algebraic Riccati equation,
A+ ·X+X·A−S+X·B·R-1·S+X·B+ +Q=0
The optional Matrix arguments R and S default respectively to the identity Matrix and the zero Matrix.
This routine operates in the real floating-point domain. Hence, the entries in the Matrix arguments must necessarily be of type numeric.
with⁡LinearAlgebra:
a≔Matrix⁡−3,2,1,1:
b≔Matrix⁡0,1:
c≔Matrix⁡1,−1:
r≔Matrix⁡3:
CARE⁡a,b,c%T·c,r,output=X,L
0.5895174372762621.821574724886091.821574724886098.81883980692312,−3.42578096594334+0.⁢I−1.32083158810045+0.⁢I
a≔Matrix⁡0,1,0,0:
q≔Matrix⁡1,0,0,2:
b≔Matrix⁡0,0,0,1:
CARE⁡a,b,q
2.000000000000001.1.2.00000000000000
CARE⁡a,b,q,output=X
CARE⁡a,b,q,output=X,L,rcond
2.000000000000001.1.2.00000000000000,−0.771362433706343+0.⁢I−0.788573861585529+0.⁢I,0.427050982904767451
See Also
copyright
DARE
LyapunovSolve
SylvesterSolve
Vector
Download Help Document