# Fraunhoferova difrakce na ctvercovem otvoru
function difrakce
  pupila=zeros(100,100);  # propustnost 0=clona, 1=otvor
  ctverec=ones(10,10);
  pupila(1:10,1:10)=ctverec; # vkladame otvor do pupily
  vystup=fftshift(fft2(ifftshift(pupila))); # Fraunhoferova aproximace
  obrazec=abs(vystup);    # budeme kreslit abs. hodnotu
  [x,y]=meshgrid(1:100);  # generujeme matice souradnic x a y
  mesh(x,y,obrazec);            # kreslime plochu
  print -djpg difrakce1.jpg
endfunction

