⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 bandb_eval.m

📁 数学优化工具箱
💻 M
字号:
function [lb,v,obj,lbr,vr,objr,den]=bandb_eval(y,opts);lb=0;lbr=zeros(opts.n,1);v=0; vr=zeros(opts.n,1);obj=0;objr=zeros(opts.n,1);den = zeros(opts.n,1);if strcmp(opts.type,'l1l1_triangle');    pxyz = y(1:3);    pxyz(4)=1;    %    fprintf('check : ');    for i = 1:opts.n;        srow = (i-1)*5+3;        t1=y(srow+1);        t2=y(srow+2);        r =y(srow+3);        a =y(srow+4);        b =y(srow+5);        %       fprintf('[%f %f %f]',r,a,b);        u=squeeze(opts.Q(i,:,:))*pxyz;        lbr(i)  = r;        vr(i)   = (t1+t2)/u(3);        objr(i) = abs(u(1))/u(3)+abs(u(2))/u(3);        den(i) = u(3);	if (den(i) <= 0);	  fprintf('DEPTH :%d  %f\n', i,den(i)); 	  end    end    %  fprintf('\n');    %keyboard;elseif strcmp(opts.type,'l1l1_resection');    P= reshape(y(1:opts.dim1*opts.dim2),[opts.dim2,opts.dim1])';    t1k = y(opts.dim1*opts.dim2+1:opts.dim1*opts.dim2+opts.dim1-1);    X = [opts.StructureArray(1,:) 1];    up=P*X';    u = opts.PointsArray(1,:);%    fprintf('first point : ');fprintf('%f ',up);fprintf('\n');   % [opts.P0 P]    objr(1) = sum(abs(u' - up(1:end-1) ));    vr(1) = sum(t1k);    lbr(1)= sum(t1k);    den(1) = up(end);    for i = 2:opts.n;        srow = opts.dim1*opts.dim2+opts.dim1-1 + (2+opts.dim1)*(i-2);        % keyboard;        tjk = y(srow+1:srow+opts.dim1-1);        r = y(srow+opts.dim1);        a = y(srow+opts.dim1+1);        b = y(srow+opts.dim1+2);        X = [opts.StructureArray(i,:) 1];        up=P*X';        u = opts.PointsArray(i,:);        objr(i)=sum(abs(u' - up(1:end-1)/up(end)));        vr(i) = sum(tjk)/up(end);        lbr(i) = r;        den(i) = up(end);    endendlb  = sum(lbr);v   = sum(vr);obj = sum(objr);%keyboard;

⌨️ 快捷键说明

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