function [] = odezei2(F, t, y,zeichenart)
% ======================================================================
%  Zum Zeichnen eine Lösungskurve im Phasenraum
%
%  Waehlt den Bildausschnitt
%  Zeichnet bei zeichenart='pfeile' das Richtungsfeld
%  Trägt die Kurve (y1(t),y2(t)) im Phasenraum auf. 
%
% Erstellt fuer die Veranstaltung
% Weiterbildenes Studium fuer Ingenieure WS 98/99
%
% S.F.
% ----------------------------------------------------------------------
[n,m]=size(y);
if m==2
% Wahl des Bilsausschnittes:
  y1=y(:,1);
  y2=y(:,2);
  y1min=min(y1);y1max=max(y1);dy1=y1max-y1min;
  y2min=min(y2);y2max=max(y2);dy2=y2max-y2min;
  
  if strcmp(zeichenart,'holdon')==0
    clf
    axis([y1min,y1max,y2min,y2max]+0.1*[-dy1,dy1,-dy2,dy2]);  

    if strcmp(zeichenart,'pfeile'),
      % Die weiteren Befehle dienen zur Erzeugung des Richtungsfeldes
      nx=15;ny=15;
      gitterx=linspace(y1min,y1max,nx);
      gittery=linspace(y2min,y2max,ny);
      [plotx,ploty] = meshgrid(gitterx,gittery);
      for i=1:ny 
        dd = feval(F,0,[plotx(i,:);ploty(i,:)]);
        dx(i,:) = dd(1,:);
        dy(i,:) = dd(2,:);
      end;
      hold on;
      quiver(plotx,ploty,dx,dy)
    else
       hold on;
    end;
  end;

  % Zeichnen der Kurve:

  % Startpunkt:
  plot(y(1,1),y(1,2),'go','markersize',10)
  % Endpunkt:
  plot(y(n,1),y(n,2),'r*','markersize',10)

  % Berechnete Trajectorie einzeichnen
  plot(y(:,1),y(:,2),'k','linewidth',2);

  hold off;
else
  error('y falsche Dimension');
end;

return;









