How can I translate the YALMIP expression to LMILAB expression?
    9 views (last 30 days)
  
       Show older comments
    
I have the following optimization problem implemented by the use of the YALMIP library:
    R11 = sdpvar(n_p, n_p);
    S11 = sdpvar(n_cl/2, n_cl/2);
    S12 = sdpvar(n_cl/2, n_cl/2);
    S22 = sdpvar(n_cl/2, n_cl/2);
    S = [S11 S12; S12' S22];
    gamma=sdpvar(1);
    % Positovity
    constr = [R11 > 0, S > 0, R11 - S11 > 0];
    % Open loop condition
    M = [R11*Ap'+Ap*R11         Bpw                             R11*Cpz';
        Bpw'             -gamma*eye(size(Bpw))                  Dpzw';
        Cpz*R11                 Dpzw                    -gamma*eye(size(Dpzw))]
    constr = [constr, M < 0];
    % Closed loop condition
    M = [S*Acl'+Acl*S         Bclw                             S*Cclz';
        Bclw'             -gamma*eye(size(Bclw',1))                  Dclzw';
        Cclz*S                 Dclzw                    -gamma*eye(size(Dclzw'))]
I would like to compare the solution by using the tools provided MATLAB (LMILAB), however I am stucked with the first step:
What is the equivalent expression for this:
    S = [S11 S12; S12' S22];
    gamma=sdpvar(1);
    % Positovity
    constr = [R11 > 0, S > 0, R11 - S11 > 0];
Should `S` be declared as a new lmi variable?
So far I started with this
setlmis([]);
R11=lmivar(1,[n_p, 1]);
S11=lmivar(1,[n_cl/2, 1]);
S12=lmivar(1,[n_cl/2, 1]);
S22=lmivar(1,[n_cl/2, 1]);
S=lmivar(1,[n_cl, 1]);
gamma=lmivar(1,[1, 0]);
lmiterm([-1 1 1 R11],1,1);                    
lmiterm([-2 1 1 S],1,1);                      
lmiterm([-3 1 1 R11],1,1);                      
lmiterm([-3 1 1 S11],1,-1);
Thank for your help.
0 Comments
Answers (0)
See Also
Categories
				Find more on Linear Matrix Inequalities in Help Center and File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!