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

📄 e641.m

📁 matlab算法集 matlab算法集
💻 M
字号:
%------------------------------------------------------------------
% Example 6.4.1: Steepest Descent Method 
%------------------------------------------------------------------

% Initialize

   clc 
   clear
   global lambda r
   lambda = [1 1];
   r = [3 2];
   n = 2;
   m = 2000;
   p = 50;
   s = 4;
   v = 1;
   tol = 1.e-4;
   d = 5;
   x1 = zeros (p,1);
   Y = zeros (p,p); 

% Find a minimum 

   fprintf ('Example 6.4.1: Steepest Descent Method\n');
   for i = 1 : s
      lambda(1) = 10^(i-1);
      x = zeros(n,1);
      [x,ev,j] = conjgrad (x,tol,v,m,'funf641');
      fprintf ('\nLambda = %g',lambda(1)');
      fprintf ('\nIterations = %i',j);
      fprintf ('\nFunction evaluations = %g',ev);
      fprintf ('\nEigenvalues  = (%g,%g)',lambda);
      fprintf ('\nOptimal x    = [%.7f,%.7f]',x(1),x(2));
      fprintf ('\nf(x)         = %.7f\n',funf641(x));
      if i < s 
         wait
      end 
   end

% Plot the objective function 

   lambda(1) = 10^(s-1); 
   for i = 1 : p
      x1(i) = (i-1)*d/(p-1);
   end
   for i = 1 : p
      for j = 1 : p
       	 x(1) = x1(i);
      	 x(2) = x1(j);
         Y(i,j) = funf641(x);
      end
   end
   plotxyz (x1,x1,Y,'','x_1','x_2','f(x)');


   
   


⌨️ 快捷键说明

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