Hi,
I’m trying to implement the following code and I get the following warning for each of the inequality constraints of the CVX:
This linear matrix inequality appears to be unsymmetric. This is
very likely an error that will produce unexpected results. Please check
the LMI; and, if necessary, re-enter the model.
I would really appreciate if anybody has a solution for this.
The Matalb code is:
w=[0.15 -0.45];
theta=sin([20 -30]/180*pi)*pi;
alpha=[1 1]*(1+1j)/sqrt(2);
K=length(alpha);
N=64;
Mt=8;
Mr=8;
A=exp(1j*(0:Mr-1).'*theta);
B=diag(alpha);
At=exp(1j*dt*(0:Mt-1).'*theta);
D=exp(1j*(0:N-1).'*w);
Ad=1j*A.*(0:Mr-1).';
Atd=1j*At*dt.*(0:Mt-1).';
Dd=1j*D.*(0:N-1).';
IN=eye(N);
cvx_begin sdp
variable C(Mt,Mt,N) hermitian;
for k=1:N
diag(C(:,:,k))== 1;
C(:,:,k) == semidefinite(Mt,Mt)
end
Ct=zeros(N*Mr, N*Mr);
for k=1:N
Ct=Ct+kron(C(:,:,k),IN(:,k)*IN(:,k).');
end
VHV=KR(At,D)'*Ct*KR(At,D);
VHVtheta=KR(At,D)'*Ct*KR(Atd,D);
VthetaHVtheta=KR(Atd,D)'*Ct*KR(Atd,D);
VHVw=KR(At,D)'*Ct*KR(At,Dd);
VthetaHVw=KR(Atd,D)'*Ct*KR(At,Dd);
VwHVw=KR(At,Dd)'*Ct*KR(At,Dd);
VthetaHV=KR(Atd,D)'*Ct*KR(At,D);
FF11=(Ad'*Ad).*(B'*VHV*B)+(Ad'*A).*(B'*VHVtheta*B)...
+(A'*Ad).*(B'*VHVtheta'*B)+(A'*A).*(B'*VthetaHVtheta*B);
FF12=(Ad'*A).*(B'*VHVw*B)+(A'*A).*(B'*VthetaHVw*B);
FF13=(Ad'*A).*(B'*VHV)+(A'*A).*(B'*VthetaHV);
FF22=(A'*A).*(B'*VwHVw*B);
FF23=(A'*A).*(B'*VHVw');
FF33=(A'*A).*(VHV);
expression F(4*K,4*K)
F=[real(FF11) real(FF12) real(FF13) -imag(FF13);...
real(FF12).' real(FF22) real(FF23) -imag(FF23);...
real(FF13).' real(FF23).' real(FF33) -imag(FF33);...
-imag(FF13).' -imag(FF23).' -imag(FF33).' real(FF33)];
minimize trace_inv(F)
cvx_end