Overview
Comment:Solves ARE for PPP
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | origin/master | trunk
Files: files | file ages | folders
SHA3-256: ec6daeb9f248b19679c168b396ba3b3c8eb3878317f119651c94fbe70cc8e4c6
User & Date: gawthrop@users.sourceforge.net on 2002-12-11 12:41:01
Other Links: branch diff | manifest | tags
Context
2002-12-11
12:41:46
LQ version of linear PPP check-in: d1aa6cd6b1 user: gawthrop@users.sourceforge.net tags: origin/master, trunk
12:41:01
Solves ARE for PPP check-in: ec6daeb9f2 user: gawthrop@users.sourceforge.net tags: origin/master, trunk
12:38:25
Added R and P arguments for LQ ppp check-in: 384a5981e4 user: gawthrop@users.sourceforge.net tags: origin/master, trunk
Changes

Added mttroot/mtt/lib/control/PPP/ppp_are.m version [c8db144483].



















































>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
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


MTT: Model Transformation Tools
GitHub | SourceHut | Sourceforge | Fossil RSS ]