Code covered by the BSD License  

Highlights from
MATLAB en zijn Symbolic Math Toolbox

image thumbnail

MATLAB en zijn Symbolic Math Toolbox

by

 

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

RelMinimum(f, a, b, Re, Ae)
function [xmin, ymin] = RelMinimum(f, a, b, Re, Ae)
%RELMINIMUM Bepaling van relatief minimum van functie f op interval [a, b]
%
% Bepaling van de plaats xmin van een relatief minimum op interval [a, b]
% van functie f
% Bepaling van de waarde ymin van f ter plaatse van xmin
%
%  Input parameters :
% -------------------
%
% --- f      : string die te onderzoeken definieert
% --- [a, b] : te onderzoeken interval
% --- Re, Ae : respectievelijk relatieve - en absolute fout
%
% Output parameters :
% -------------------
%
% --- xmin   : plaats van het gevonden minimum
% --- ymin   : waarde van het gevonden minimum
%

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 = 'intam';
   elseif fd < fm
      int = 'intmb';
   else
      int = 'intcd';
   end; % if
   
   switch int case { 'intam' }
      b  = m;
      fb = fm;
              case { 'intmb' }
      a  = m;
      fa = fm;
              case { 'intcd' }
      a  = c;
      b  = d;
      fa = fc;
      fb = fd;
   end; % switch
   
   m  = (a + b) / 2;
   fm = feval(f, m);
end; % while   

xmin = m;
ymin = fm;

%
%               ************ 
% Functiefile : RelMinimum.m 
%               ************
%

Contact us