Advertisement
Guest User

Untitled

a guest
Feb 6th, 2019
98
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Octave 1.42 KB | None | 0 0
  1. close all; clear all;
  2. N = 7;
  3. T = 1000;
  4. sep = 2.5;
  5. mark = '.k';
  6. animate = 0;
  7.  
  8. t = linspace(0,2*pi,t_step);
  9.  
  10. circle = zeros(N, T, 2);
  11. for i = 1:N
  12.   circle(i,:,1) = cos(t*i);
  13.   circle(i,:,2) = sin(t*i);
  14. end
  15.  
  16. curve = zeros(N, N, T, 2);
  17. for i = 1:N
  18.   for j = 1:N
  19.     curve(i,j,:,1) = circle(i,:,1);
  20.     curve(i,j,:,2) = circle(j,:,2);
  21.   end
  22. end
  23.  
  24. hold on;
  25. axis([-1 N*sep+1 -(N*sep+1) 1])
  26. axis square
  27. set(gca,'visible','off')
  28.  
  29. if animate == 0
  30.   for i = 1:N
  31.     plot(circle(i,:,1)+sep*i, circle(i,:,2),       mark)
  32.     plot(circle(i,:,1),       circle(i,:,2)-sep*i, mark)
  33.    
  34.     for j = 1:N
  35.       plot(curve(i,j,:,1)+sep*i, curve(i,j,:,2)-sep*j, mark)
  36.     end
  37.    
  38.   end
  39. end
  40.  
  41. if animate == 1
  42.   for t = 1:T
  43.     xbordercirc = zeros(N,1);
  44.     ybordercirc = zeros(N,1);
  45.     curvecirc = zeros(N,N);
  46.    
  47.     for i = 1:N
  48.       plot(circle(i,t,1)+sep*i, circle(i,t,2),     '.k')
  49.       plot(circle(i,t,1),     circle(i,t,2)-sep*i, '.k')
  50.      
  51.       xbordercirc(i) = plot(circle(i,t,1)+sep*i, circle(i,t,2),     'ok');
  52.       ybordercirc(i) = plot(circle(i,t,1),     circle(i,t,2)-sep*i, 'ok');
  53.      
  54.       for j = 1:N
  55.         plot(curve(i,j,t,1)+sep*i, curve(i,j,t,2)-sep*j, '.k')
  56.        
  57.         curvecirc(i,j) = plot(curve(i,j,t,1)+sep*i, curve(i,j,t,2)-sep*j, 'ok');
  58.       end
  59.      
  60.     end
  61.    
  62.     pause(0.01)
  63.     delete(xbordercirc);
  64.     delete(ybordercirc);
  65.     delete(curvecirc);
  66.   end
  67. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement