sedumi2dsdp5.m

来自「matlab波形优化算法经常要用到的matlab toolbox工具箱:yalm」· M 代码 · 共 37 行

M
37
字号
function [b,AC] = sedumi2dsdp(F_struc,c,K)
%SEDUMI2DSDP5 Internal function to convert SeDuMi structure to format needed in DSDP 5

% Author Johan L鰂berg
% $Id: sedumi2dsdp5.m,v 1.1 2004/10/06 18:11:26 johanl Exp $

nvars = size(F_struc,2)-1;

A = [];
block  = 1; 
top = 1;

if K.l>0    
    AC{block,1} = 'LP';
    AC{block,2} = K.l;
    A = F_struc(top:top+K.l-1,:);   
    AC{block,3} = [-A(:,2:end) A(:,1)];
    block = block+1;
    top = top+K.l;
end

if K.s>0
    for i = 1:length(K.s)
        n = K.s(i);
        AC{block,1} = 'SDP';
        AC{block,2} = n;
        A = F_struc(top:top+n^2-1,:);
        indicies = triu(reshape(1:n^2,n,n));
        indicies = indicies(find(indicies));
        AC{block,3} = [-A(indicies,2:end) A(indicies,1)];
        block = block+1;
        top = top+n*n;
    end
end
% And we solve dual...
b = -c(:);

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?