function [M] = y2dquivm (ufile, vfile, szx, szy, dskip, opt)
%ufile et vfile sous forme matricielle
%ufile='fufasij'; %
%vfile='fvfasij'; x%
%szx='50';	  %
%szy='100';	  %
%dskip='0';	  % entier qui doit etre > 0 et < ?
%opt='0';	  :
   %"une seule figure" :
   %'0' => affichage "brut"
   %'1' => affichage "enjolivé mais moins précis"
   % "t figures" :
   %'2' => affichage "brut"
   %'3' => affichage "enjolivé mais moins précis"
%---------------------------------------------------------%
%exemple d'utilisation :
%  -	[M] = y2dquivm('fumji', 'fvmji', '100', '100', '1', '1');
%       ce qui permet de faire apres : movie(M)
%
%  -    y2dquivm fumji fvmji 100 100 2 0;
%  -    y2dquivm fvmij fumij 100 100 2 0; %may be ok if squared matrix ?

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%       matlab proc to animate 2D variable space
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%--------- parametres d'affichage :
reset(gcf)
if (opt=='1' | opt=='3')
%	figure
	set(gcf,'Color',[0 0 0]); %sur fond noir
end
set(gca,'Position',[0 0 1 1])

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%--------- positionnement de variables
eval(['SZX = str2num(szx);']);	% taille de l'axe des X
eval(['SZY = str2num(szy);']);	% taille de l'axe des Y
SZSPACE = SZX*SZY;	 	% d'où taille de l'espace

eval(['pas = str2num(dskip);']);% echantillonage pour la
				% définition de l'affichage

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

  %--------- charger les vitesses dans les matrices U2D et V2D
  U2D  = load(ufile);		 % vitesse u (axe des x)
  V2D  = load(vfile);		 % vitesse v (axe des y)

  if (size(U2D,1)~=size(V2D,1) | size(U2D,2)~=size(V2D,2))
     sprintf('y2dquivm:->error: files have not the same dimension')
     return;
  end

  nbpdt  = size(U2D,1) / (SZY);  % nombre de pas de temps

  %--------- boucle d'affichage
  for t=0:nbpdt-1,
      if (opt=='2' | opt=='3')	% toutes les figures
      	 figure(t+1);
      end
      if (opt=='1' | opt=='3')	% sur fond noir
	 set(gcf,'Color',[0 0 0]);
      end

      set(gca,'Position',[0 0 1 1])

      subx = 1:pas:SZX;			% colonnes
      suby = (SZY*t)+1:pas:SZY*(t+1);	% lignes

      U=U2D(suby, subx);
      V=V2D(suby, subx);

      quiver(U,V);

      if (opt=='1' | opt=='3') % faire joli
         set(gca,'Visible','off','Position',[0 0 1 1]) % virer les
                                  % axes et prendre toute la place
      end

      axis image
      M(t+1) = getframe;
  end

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%animation :
if (opt=='1' | opt=='3') %faire joli
   %set(gca,'Visible','off','Position',[0 0 1 1]);
   set(gca,'Visible','off');
end
movie(M,0);
return

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% creation d'un fichier mpg
%   (sa plante + ou -)
%==========================================================
% faire d'abord un
%     cp ~/matlab/MPG/mpg* .
% puis :
%     map=colormap
%     mpgwrite(M,map,'imagex.mpg')
%
% pour terminer proprement, faire
% un clear all puis un close all et exit
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%






