Artifact c8db1444830f8e65955f05d4ffbff2dcf3e1bf720f1c17cb5830ad6c7bfe318c:
- File mttroot/mtt/lib/control/PPP/ppp_are.m — part of check-in [09c187373a] at 2002-12-11 12:41:01 on branch origin/master — Solves ARE for PPP (user: gawthrop@users.sourceforge.net, size: 527) [annotate] [blame] [check-ins using] [more...]
function [P,A_u,A_w,k] = ppp_are (A,B,C,D,Q,R) ## usage: [P,A_u,A_w] = ppp_are (A,B,C,D,Q,R) ## ## ## Steady-state Linear Quadratic solution ## using Algebraic Riccati equation (ARE) Q_x = C'*Q*C; # Weighting on x [k, P, poles] = lqr (A, B, Q_x, R); # Algebraic Riccati solution ## Basis functions A_u = compan(poly(poles)); ## Avoid spurious imag parts due to rounding A_u = real(A_u); ## Setpoint basis functions A_w = 0; ## Include A_w in A_u A_u = ppp_aug(A_u,A_w); endfunction