Overview
Comment: | Add extra modes using p_c.A_e |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | origin/master | trunk |
Files: | files | file ages | folders |
SHA3-256: |
a025e27f467165974bf592196f1ca034 |
User & Date: | gawthrop@users.sourceforge.net on 2003-10-28 20:58:16 |
Other Links: | branch diff | manifest | tags |
Context
2003-10-28
| ||
21:31:24 | Don't default R if already set! check-in: 5ef421790a user: gawthrop@users.sourceforge.net tags: origin/master, trunk | |
20:58:16 | Add extra modes using p_c.A_e check-in: a025e27f46 user: gawthrop@users.sourceforge.net tags: origin/master, trunk | |
2003-10-26
| ||
22:55:11 | Fixed installation of man page. check-in: 5e9c9e09ce user: geraint@users.sourceforge.net tags: origin/master, trunk | |
Changes
Modified mttroot/mtt/lib/control/PPP/ppp_lin_run.m from [afe5f8a794] to [ef48377cb1].
︙ | ︙ | |||
60 61 62 63 64 65 66 | endif if !struct_contains(p_c,"augment") p_c.augment = 0; # Augment basis funs with constant endif if !struct_contains(p_c,"integrate") | | | 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 | endif if !struct_contains(p_c,"augment") p_c.augment = 0; # Augment basis funs with constant endif if !struct_contains(p_c,"integrate") p_c.integrate = 0; endif if !struct_contains(p_c,"Tau_u") p_c.Tau_u = []; p_c.Min_u = []; p_c.Max_u = []; endif |
︙ | ︙ | |||
112 113 114 115 116 117 118 | elseif strcmp(p_c.Method,"original"); p_c.tau = [10:0.1:11]; else error(sprintf("Method %s not recognised", p_c.Method)); endif endif | | > > | 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 | elseif strcmp(p_c.Method,"original"); p_c.tau = [10:0.1:11]; else error(sprintf("Method %s not recognised", p_c.Method)); endif endif if !struct_contains(p_c,"A_e") p_c.A_e = []; # No extra modes endif if !struct_contains(p_o,"x_0") p_o.x_0 = zeros(n_x,1); endif if !struct_contains(p_o,"method") ##p_o.method = "continuous"; |
︙ | ︙ | |||
147 148 149 150 151 152 153 | K_w = zeros(p_c.n_U,n_y); K_w(1,1) = 1; K_w(2,1) = -1; K_x = zeros(p_c.n_U,n_x); else I = ceil(p_c.T/p_c.delta_ol) # Number of large samples if strcmp(p_c.Method, "original") | < < | | | 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 | K_w = zeros(p_c.n_U,n_y); K_w(1,1) = 1; K_w(2,1) = -1; K_x = zeros(p_c.n_U,n_x); else I = ceil(p_c.T/p_c.delta_ol) # Number of large samples if strcmp(p_c.Method, "original") [k_x,k_w,K_x,K_w,Us0,J_uu,J_ux,J_uw,J_xx,J_xw,J_ww] =\ ppp_lin(A,B,C,D,p_c.A_u,p_c.A_w,p_c.tau); # Design elseif strcmp(p_c.Method, "lq") # LQ design [k_x,k_w,K_x,K_w,Us0,J_uu,J_ux,J_uw,J_xx,J_xw,J_ww,A_u] \ = ppp_lin_quad (A,B,C,D,p_c.tau,p_c.Q,p_c.R,p_c.A_e); p_c.A_u = A_u else error(sprintf("Control method %s not recognised", p_c.Method)); endif ##Sanity check A_u [p_c.n_U,M_u] = size(p_c.A_u); if (p_c.n_U!=M_u) |
︙ | ︙ | |||
277 278 279 280 281 282 283 | ppp_output_constraints(A,B,C,D,x_est,p_c.A_u,\ p_c.Tau_y,p_c.Min_y,p_c.Max_y); ## Composite constraints - t=0 Gamma = [Gamma_u; Gamma_y]; gamma = [gamma_u; gamma_y]; | > | < | 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 | ppp_output_constraints(A,B,C,D,x_est,p_c.A_u,\ p_c.Tau_y,p_c.Min_y,p_c.Max_y); ## Composite constraints - t=0 Gamma = [Gamma_u; Gamma_y]; gamma = [gamma_u; gamma_y]; [u_qp,U] = ppp_qp \ (x_est,w,J_uu,J_ux,J_uw,Us0,Gamma,gamma,1e-6,1); endif ## Save data if Simulate t = [t;ti']; y = [y;yi']; u = [u;ui']; else |
︙ | ︙ |