Overview
| Comment: | Updated for new PPP |
|---|---|
| Downloads: | Tarball | ZIP archive |
| Timelines: | family | ancestors | descendants | both | origin/master | trunk |
| Files: | files | file ages | folders |
| SHA3-256: |
d744f43e9997a7673f587b06fc15e2ad |
| User & Date: | gawthrop@users.sourceforge.net on 2005-09-07 18:30:36.000 |
| Other Links: | branch diff | manifest | tags |
Context
|
2005-09-07
| ||
| 18:31:40 | Updated check-in: 45f847fa33 user: gawthrop@users.sourceforge.net tags: origin/master, trunk | |
| 18:30:36 | Updated for new PPP check-in: d744f43e99 user: gawthrop@users.sourceforge.net tags: origin/master, trunk | |
| 18:29:33 | Use ss not sys2ss check-in: 7c9f228b82 user: gawthrop@users.sourceforge.net tags: origin/master, trunk | |
Changes
Modified mttroot/mtt/lib/control/PPP/ppp_are.m
from [61fa06621b]
to [fabd8baa32].
| ︙ | |||
24 25 26 27 28 29 30 | 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 | - - + + |
if n_q==n_y # Output weight
Q_x = C'*Q*C; # Weighting on x
elseif n_q==n_x # State weight
Q_x = Q;
else
error(sprintf("Q (%ix%i) must be %ix%i or %ix%i",n_q,n_q,n_y,n_y,n_x,n_x));
endif
|
| ︙ |
Modified mttroot/mtt/lib/control/PPP/ppp_ustar2h.m
from [07b58f747a]
to [ec1d4f0005].
| 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 26 27 28 29 30 31 32 33 34 | - + + + + + - + + + |
|
| ︙ |
Modified mttroot/mtt/lib/control/PPP/ppp_ystar.m
from [17c1b7c256]
to [0c38479f43].
| 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 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 | - + - + + + - + - |
|
| ︙ | |||
58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 | 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 | + + + + + + + + + + - + |
endif
[n,m]=size(tau);
if (n != 1 )
error("tau must be a row vector of times");
endif
if nargin<9
Us0 = ones(1,n_U);
endif
[n_Us0,m_Us0] = size(Us0);
if (n_Us0>1)||(n_Us0>m_Us0)
error(sprintf("Us0 must be a row vector, not %ix%i ",n_Us0,m_Us0));
endif
if square # Then same A_u for each input
## Reorganise vector U into matrix Utilde
Utilde = [];
for i=1:n_u
j = (i-1)*n_U;
range = j+1:j+n_U;
Utilde = [Utilde; U(range,1)'];
endfor
## Composite A matrix
if no_system
AA = A_u;
else
Z = zeros(n_U,n_x);
AA = [A B*Utilde
Z A_u];
endif
|
| ︙ |