Code covered by the BSD License  

Highlights from
MATLAB en zijn Symbolic Math Toolbox

image thumbnail

MATLAB en zijn Symbolic Math Toolbox

by

Tjibbele Miedema

 

Leergang voor geïnteresseerden in de Computeralgebra - Systemen MATLAB en zijn Symbolic Math Toolbox

RelMaximum(f, a, b, Re, Ae)
function [xmax, ymax] = RelMaximum(f, a, b, Re, Ae)

%
% Bepaling van de plaats xmax van een relatief maximum op interval [a, b]
% van functie f
% Bepaling van de waarde ymax van f ter plaatse van xmax
%

m  = (a + b) / 2;
fa = feval(f, a);
fb = feval(f, b);
fm = feval(f, m);

while abs(b - a) > (abs(m) * Re + Ae)
   c  = (a + m) / 2;
   d  = (b + m) / 2;
   fc = feval(f, c);
   fd = feval(f, d);
   
   if     fc > fm
      int = 1;
   elseif fd > fm
      int = 2;
   else
      int = 3;
   end; % if
   
   switch int case { 1 }
      b  = m;
      fb = fm;
              case { 2 }
      a  = m;
      fa = fm;
              case { 3 }
      a  = c;
      b  = d;
      fa = fc;
      fb = fd;
   end; % switch
   
   m  = (a + b) / 2;
   fm = feval(f, m);
end; % while   

xmax = m;
ymax = fm;

%
%               ************ 
% Functiefile : RelMaximum.m 
%               ************
%

Contact us