📄 l1l1_resection_update.m
字号:
function opts=l1l1_resection_update(H,opts);% construct the objective variable% order of variablesnvar = opts.dim1*opts.dim2+ opts.dim1-1 + (2+opts.dim1)*(opts.n-1);nlinear = ((opts.dim1-1)*2+10)*(opts.n-1) + 2*(opts.dim1-1) +1 ;ncone = 6*(opts.n-1);Alinear = opts.Alinear;clinear = opts.clinear;Acone = opts.Acone;ccone = opts.ccone;srow = 1+2*(opts.dim1-1);scol = opts.dim1*opts.dim2+opts.dim1-1;for i = 2:opts.n; l=opts.xbounds(i,1); % numerator lower bound u=opts.xbounds(i,2); % numerator upper bound L=H(i,1); % denominator lower bound U=H(i,2); % denominator upper bound X=[opts.StructureArray(i,:) 1]; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % The linear constraints %srow=(i-1)*((opts.dim1-1)*2+10); %scol=opts.dim1*opts.dim2+(i-1)*(2+opts.dim1); Alinear(srow+1,scol+1:scol+opts.dim1-1)=-L; Alinear(srow+1,scol+opts.dim1+2)=-(u-l); clinear(srow+1) = -L*u; Alinear(srow+2,opts.dim1*opts.dim2-opts.dim2+1:opts.dim1*opts.dim2 ) = (u-l)*X; Alinear(srow+2,scol+1:scol+opts.dim1-1)=-U; Alinear(srow+2,scol+opts.dim1+2)=-(u-l); clinear(srow+2) = -U*l; Alinear(srow+3,scol+1:scol+opts.dim1-1)=U; Alinear(srow+3,scol+opts.dim1+2)=(u-l); clinear(srow+3) = U*u; Alinear(srow+4,opts.dim1*opts.dim2-opts.dim2+1:opts.dim1*opts.dim2 ) = -(u-l)*X; Alinear(srow+4,scol+1:scol+opts.dim1-1)=L; Alinear(srow+4,scol+opts.dim1+2)=(u-l); clinear(srow+4) = L*l; Alinear(srow+7+2*(opts.dim1-1),(opts.dim1-1)*opts.dim2+1:opts.dim1*opts.dim2 )=-X; clinear(srow+7+2*(opts.dim1-1)) = -L; Alinear(srow+8+2*(opts.dim1-1),(opts.dim1-1)*opts.dim2+1:opts.dim1*opts.dim2 )=X; clinear(srow+8+2*(opts.dim1-1)) = U; srow = srow+ 2*(opts.dim1-1) +10; scol = scol + 2+opts.dim1; end%keyboard;opts.Alinear = Alinear;opts.clinear = clinear;opts.A=[opts.Alinear;opts.Acone];opts.c=[opts.clinear;opts.ccone];
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -