# Solving a LMI problem With CVX (Moderator Note: LMIs are convex, but this is not an LMI)

im trying to min Alphaa, over a LMI Like below :

``````clc
clear all
clc
%%%%%%%%%%%%%%%System%%%%%%%%%%%%%%%%%%%%%
A=[-0.0266 -40 -18.897 -32.09 3.2509 -0.7626;
0.0001 -1.8997 0.9831 -0.0007 -0.1708 -0.005;
0.0123 11.72 -2.6316 0.0009 -31.604 2;
0 0 1 0 0 0;0 0 0 0 -30 0;0 0 0 0 0 -30];
B=[0 0;0 0;0 0;0 0;30 0;0 30];
C=[0 1 0 0 0 0;0 0 0 1 0 0];

%%%%%%%%%%%%%%%System-bar Parameter%%%%%%%
ZeSix=[0 0;0 0;0 0;0 0;0 0;0 0];
ZeTwo=[0 0 0 0 0 0;0 0 0 0 0 0];
ZeEight=[0 0;0 0;0 0;0 0;0 0;0 0;0 0;0 0];
%%%%%%%%%%%%%%%%%%%%%%
Abar=[A,ZeSix;C,zeros(2)];
Bbar=[B;zeros(2)];
Cbar=[C,zeros(2);ZeTwo,eye(2);(C*A),zeros(2)];
Gbar=Bbar*Bbar';
%%%%%%%%%%%%%%%RiCCAti%%%%%%%%%%%%%%%%%%%%
Q=eye(8);
[P,L,Gg] = care(Abar,Bbar,Q)
EigenValueOfP = eig(P)

%%%%%%%%%%%%%%%LMI-Constrins%%%%%%%%%%%%%%

cvx_begin sdp

variable X(8,8);
variable Fbar(2,6);
variable Alphaa;

minimize Alphaa;
subject to
[(Abar'*P)+(P*Abar)-(X'*Gbar*X)-(Alphaa.*P),((Bbar'*P)+(Fbar*Cbar))', (X'*Bbar);    (Bbar'*P)+(Fbar*Cbar) , -eye(8) ,ZeEight;    Bbar'*X , ZeEight' ; eye(2)] <= zeros(12);
cvx_end
``````

but i faced with this error:

Error using * (line 126)
Disciplined convex programming error:
Only scalar quadratic forms can be specified in CVX
.

Error in riccati (line 36)
[(Abar’P)+(PAbar)-(X’GbarX)-(Alphaa.*P),((Bbar’P)+(FbarCbar))’, (X’*Bbar); (Bbar’P)+(FbarCbar) , -eye(8)
,ZeEight; Bbar’*X , ZeEight’ ; eye(2)] <= zeros(12);

All the elements of an LMI need to be affine (linear) in the optimization variables; Otherwise it is not a LINEAR Matrix Inequality. CVX will not accept Nonlinear Matrix Inequalities.

Have you proven your problem is convex? I will assume, until you show otherwise, that it is non-convex. iI it is convex, reformulation is required for entry into CVX.