% 
%  Eigener DGL-Solver: EulerVerfahren
%    tspan = Zeitintervall, x0 = Anfangswert, h = Zeit-Schrittweite 
%    für DGL-Funktion:  dx_dt = DglFun( t, x, par )
%
%  >> [t,x] = EulerVerfahren( @DglFun, [0,1], 10, 0.1, 1 ); 
%  >> plot( t, x );
% 
function [t,x] = EulerVerfahren( DglFun, tspan, x0, h, par ) 

   t0 = tspan(1); 
   te = tspan(2);
   % Zeitintervall von t0 bis t1 
   t = t0:h:te; 
   anz = length(t);
   
   % Vorbelegung: evtl. mehrdim. DGL 
   anzZ = length( x0 ); 
   x(anzZ,1:anz) = 0;
   
   x(:,1) = x0'; 
   for( n=2:anz )
      x(:,n) = x(:,n-1) + h * DglFun( t(n-1), x(:,n-1), par ); 
   end
  
  