Overview
Comment: | Previous version wrong for x_0 ne 0; this version now correct |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | origin/master | trunk |
Files: | files | file ages | folders |
SHA3-256: |
a08be0e007845ca5086c0862277fe391 |
User & Date: | gawthrop@users.sourceforge.net on 2003-11-03 01:07:16 |
Other Links: | branch diff | manifest | tags |
Context
2003-11-03
| ||
02:47:47 | Show constained and controlled outputs seperately. check-in: ad19b07f17 user: gawthrop@users.sourceforge.net tags: origin/master, trunk | |
01:07:16 | Previous version wrong for x_0 ne 0; this version now correct check-in: a08be0e007 user: gawthrop@users.sourceforge.net tags: origin/master, trunk | |
2003-11-02
| ||
23:34:57 | Split up outtput into controlled and constrained check-in: 15390c620e user: gawthrop@users.sourceforge.net tags: origin/master, trunk | |
Changes
Modified mttroot/mtt/lib/control/PPP/ppp_output_constraint.m from [3c6de46c10] to [1ed78d0651].
︙ | ︙ | |||
44 45 46 47 48 49 50 51 52 | if (n != n_tau)||(m != n_tau)||(o != n_tau) error("Tau, Min, Max and Order must be the same length"); endif ## Compute Gamma Gamma = []; for i=1:n_U U = zeros(n_U,1); U(i,1) = 1; # Set up U_i | > | | | | | | 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 | if (n != n_tau)||(m != n_tau)||(o != n_tau) error("Tau, Min, Max and Order must be the same length"); endif ## Compute Gamma Gamma = []; zero_x = zeros(size(x_0)); for i=1:n_U U = zeros(n_U,1); U(i,1) = 1; # Set up U_i y_i = ppp_ystar (A,B,C,D,zero_x,A_u,U,Tau); # Compute y* for ith input for each tau y_i = y_i(i_y,:); # Pluck out output i_y ## Gamma = [Gamma [-y_i';y_i']]; # Put in parts for Min and max Gamma_i = []; if (Min>-inf) Gamma_i = [Gamma_i; -y_i']; # Min part of column endif if (Max<inf) Gamma_i = [Gamma_i; y_i']; # Add column for Max endif Gamma = [Gamma Gamma_i]; # Put in parts for Min and max endfor ## Compute gamma zero_U = zeros(size(U)); y_x = ppp_ystar (A,B,C,D,x_0,A_u,zero_U,Tau); # Output if U is zero gamma = []; if (Min>-inf) gamma = [gamma; -(Min-y_x)']; endif if (Max<inf) gamma = [gamma; (Max-y_x)']; endif endfunction |