已知A=[-8.5 7 8;5 -5.7 9; 0.5 0.2 -6.7]; C=[1.2 0 0;0 1.2 0;0 0 1.2];运用LMI解出3维方阵X,使得A-XC负定请给出完整代码
时间: 2024-05-21 15:10:38 浏览: 12
clc
clear
A = [-8.5 7 8;5 -5.7 9; 0.5 0.2 -6.7];
C = [1.2 0 0;0 1.2 0;0 0 1.2];
setlmis([]);
X = lmivar(1,[3 1]);
lmiterm([-1 1 1 X],1,1);
lmiterm([-2 1 1 X],C,A,'s');
lmiterm([-2 1 1 X],1,C,'s');
lmis = getlmis;
[tmin,xfeas] = feasp(lmis);
if tmin<0
X = dec2mat(lmis,xfeas,X);
disp('The solution is:')
disp(X)
else
disp('No solution found')
end
相关问题
已知A=[-8.5 7 8;5 -5.7 9; 0.5 0.2 -6.7]; C=[1.2 0 0;0 1.2 0;0 0 1.2];用matlab LMI解出3维方阵X,使得A-XC负定。请给出完整代码
clc; clear;
A = [-8.5, 7, 8; 5, -5.7, 9; 0.5, 0.2, -6.7];
C = [1.2, 0, 0; 0, 1.2, 0; 0, 0, 1.2];
setlmis([]);
X = lmivar(1, [3, 1]);
lmiterm([-1, 1, 1, 0], X);
lmiterm([1, 1, 1, X], A, C', 's');
lmiterm([-1, 1, 2, 0], C);
lmiterm([-2, 1, 1, X], 1, 1);
lmis = getlmis;
[tmin, xfeas] = feasp(lmis);
X = dec2mat(lmis, xfeas, X);
if min(eig(X)) < 0
disp('A - XC is not negative definite');
else
disp('A - XC is negative definite');
end
已知A=-1001、B=-0101,求[A+B]补。
根据补数的定义,[A B]补=2^n-[(-A)B],其中n为A和B的位数,-A为A的二进制补码表示。对A和B分别取二进制补码,得到A的补码为 1111 1000,B的补码为 1011。将其代入公式,得到[ A B ]补 = 2^8 - [(1111 1000) 1011] = 2^8 - 1011 1000 = 1000 1001。因此,[ A B ]补为 1000 1001。