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

📄 band.m

📁 一个很好用的摄像机标定程序
💻 M
字号:
function [fvec,J] = band(n,m,x,opt)

%******************************************
% Function [Fvec, J]= band (n,m,x,opt)
% Broyden banded function   [31]
% Dimensions: n variable,   m=n
% Standard starting point: (-1,...,-1)
% minima of f=0
%
% coded in MATLAB  11/94        plk
% *****************************************   

ml=5;
mu=1;
 
J=zeros(m,n);
for i=1:m
        sum=0;
        lb=max(1,i-ml);
        lu=min(n,i+mu);
         
        for j=1:n
           if (j ~= i)
              if((j>=lb)&(j<=lu))
                 sum=sum + x(j)*(1+x(j));
              end;
           end;
        end;


        if((opt==1)|(opt==3))
          fvec(i)=x(i)*(2+5*(x(i)^2))+1-sum;
        end;

        if((opt==2)|(opt==3))
          for j=1:n
            if i==j
               J(i,j)=2+15*(x(i)^2);          
            elseif((j>=lb)&(j<=lu)) 
               J(i,j)=-1-2*x(j);
            end;
          end;
        end;
end;                 
fvec=fvec';

if((opt<1)|(opt>3))
   disp('Error: Option value sent to BAND.M is either <1 or >3 ');
end;

⌨️ 快捷键说明

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