Advertisement
Guest User

Fractional Fourier Transformation Animation

a guest
Jul 12th, 2015
296
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
MatLab 1.58 KB | None | 0 0
  1. writerObj = VideoWriter('test.avi');
  2. open(writerObj);
  3.  
  4. func=@(t) rectpuls(t);
  5. HalfDur=20;
  6. t=-HalfDur:0.1:HalfDur;
  7. x=func(t);
  8.  
  9.  
  10.  
  11. %animation setup
  12. plot(t,real(x))
  13. hold on
  14. plot(t,imag(x),'r')
  15. title('0.000')
  16. axis([-5 5 -0.5 1.5])
  17. set(gca,'nextplot','replacechildren');
  18. set(gcf,'Renderer','zbuffer');
  19.  
  20.  
  21. frame = getframe( gcf );
  22. writeVideo(writerObj,frame);
  23. frame = getframe( gcf );
  24. writeVideo(writerObj,frame);
  25. frame = getframe( gcf );
  26. writeVideo(writerObj,frame);
  27. frame = getframe( gcf );
  28. writeVideo(writerObj,frame);
  29. frame = getframe( gcf );
  30. writeVideo(writerObj,frame);
  31.  
  32. N=60;
  33. % x_a=zeros(N,length(t));
  34.  
  35. tic;
  36. for n = 1:N
  37.    
  38.     a=n/60;
  39.     x=sqrt(1-1i*cot(a*pi/2)) *integral(@(u) ...
  40.             rectpuls(u).*exp(1i*pi* (  cot(a*pi/2)*t.^2   -2*csc(a*pi/2)*u.*t   +cot(a*pi/2)*u.^2  )) ,-HalfDur,HalfDur ,'AbsTol',1e-2,'ArrayValued',true);
  41.    
  42.  
  43.         hold off
  44.         plot(t,real(x))
  45.         hold on
  46.         plot(t,imag(x),'r')
  47.         title(sprintf('%0.3f',a))
  48.         axis([-5 5 -0.5 1.5])
  49.         frame = getframe( gcf );
  50.         writeVideo(writerObj,frame);
  51.         frame = getframe( gcf );
  52.         writeVideo(writerObj,frame);
  53.    
  54. end
  55. toc;
  56. frame = getframe( gcf );
  57. writeVideo(writerObj,frame);
  58. frame = getframe( gcf );
  59. writeVideo(writerObj,frame);frame = getframe( gcf );
  60. writeVideo(writerObj,frame);
  61. frame = getframe( gcf );
  62. writeVideo(writerObj,frame);frame = getframe( gcf );
  63. writeVideo(writerObj,frame);
  64. frame = getframe( gcf );
  65. writeVideo(writerObj,frame);
  66. frame = getframe( gcf );
  67. writeVideo(writerObj,frame);
  68. close(writerObj);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement