CD Continuous Algebraic Riccati Equations VI

Control Design VI and Function

CD Continuous Algebraic Riccati Equations VI

Owning Palette: Solvers VIs

Installed With: Control Design and Simulation Module

Calculates the symmetric positive definite, or stabilizing, matrix X that solves the following continuous algebraic Riccati equation (CARE).

A'.X + X.A–[X.B + N].inv(R).[X.B + N]' + Q = 0

 Place on the block diagram  Find on the Functions palette
A specifies an n x n state matrix, where n is the number of states.
B specifies an n x m input matrix, where m is the number of inputs.
Q specifies the state weight matrix. Q must be symmetric and positive semi-definite.
R specifies the input weight matrix. R must be symmetric and positive definite. The default is an identity matrix of appropriate dimensions.
error in describes error conditions that occur before this VI or function runs. The default is no error. If an error occurred before this VI or function runs, the VI or function passes the error in value to error out. This VI or function runs normally only if no error occurred before this VI or function runs. If an error occurs while this VI or function runs, it runs normally and sets its own error status in error out. Use the Simple Error Handler or General Error Handler VIs to display the description of the error code. Use exception control to treat what is normally an error as no error or to treat a warning as an error. Use error in and error out to check errors and to specify execution order by wiring error out from one node to error in of the next node.
status is TRUE (X) if an error occurred before this VI or function ran or FALSE (checkmark) to indicate a warning or that no error occurred before this VI or function ran. The default is FALSE.
code is the error or warning code. The default is 0. If status is TRUE, code is a nonzero error code. If status is FALSE, code is 0 or a warning code.
source specifies the origin of the error or warning and is, in most cases, the name of the VI or function that produced the error or warning. The default is an empty string.
N specifies the state-input cross weight matrix. The value of N must be such that the matrix (QN*inv(R)*N) is positive semi-definite. The default value of N is an empty matrix of appropriate dimensions.
Riccati Solution (X) returns the solution to the algebraic Riccati equation.
Gain (K) returns the gain matrix K such that K = inv(R).(B'X+N').
Closed-Loop Eigenvalues returns the eigenvalues of the matrix (ABK). These eigenvalues are the closed-loop pole locations.
Relative Residual returns the relative residual of the Riccati Solution (X). The Relative Residual is defined by the following equation:

Relative Residual = ||Residual|| / ||X||

where||Residual|| is the is the Frobenius norm of the continuous algebraic Riccati equation achieved by substituting the solution X into (A'.X + X.A–[X.B+N].inv(R).[X.B+N]' + Q)
||X|| is the Frobenius norm of the Riccati Solution (X)
error out contains error information. If error in indicates that an error occurred before this VI or function ran, error out contains the same error information. Otherwise, it describes the error status that this VI or function produces. Right-click the error out front panel indicator and select Explain Error from the shortcut menu for more information about the error.
status is TRUE (X) if an error occurred or FALSE (checkmark) to indicate a warning or that no error occurred.
code is the error or warning code. If status is TRUE, code is a nonzero error code. If status is FALSE, code is 0 or a warning code.
source describes the origin of the error or warning and is, in most cases, the name of the VI or function that produced the error or warning.