File:Lens and wavefronts.gif

Lens_and_wavefronts.gif ‎(183 × 356 pixels, file size: 35 KB, MIME type: image/gif, looped, 9 frames, 0.7 s)

slnglelens

Summary

Description Illustration of wavefronts after passing through a lens. Interestingly, to produce a point source reverse the direction of the waves, with the focus point acting as a point source.
Date (UTC)
Source self-made with MATLAB
Author Oleg Alexandrov
Other versions
 
This diagram was created with MATLAB.

Licensing

Public domain I, the copyright holder of this work, release this work into the public domain. This applies worldwide.
In some countries this may not be legally possible; if so:
I grant anyone the right to use this work for any purpose, without any conditions, unless such conditions are required by law.

siingleline

% Illustration of planar wavefronts going through a lens and getting focused
% into a converging spherical wave

function main ()

  % lens index
   n=1.5; 

  % number of points, used for plotting
   N = 100;

  % radii of lens surfaces
   R1 = 0.5; 
   R2 = 1.5;

  % centers of circles (y coord is 0)
   O1 = -2.9;
   O2 = -O1;

  % focal length
   f = (n-1)*(1/R1+1/R2); f = 1/f;
   
   % theta0 determines the width of the lens
   theta0=pi/6;
   Theta = linspace(-theta0, theta0, N);

  % right face of the lens
   L1x = R1*cos(Theta)+O1;
   L1y =R1*sin(Theta); 

   % left size of the lens
   L2x=-R2*cos(Theta)+O2;
   L2y = R2*sin(Theta);

   % flat top part
   Topx = [L1x(N), L2x(N)];
   Topy = [L1y(N), L2y(N)];

   % flat bottom part
   Botx = [L1x(1) L2x(1)];
   Boty = [L1y(1), L2y(1)];

   % the lens
   Lensx = [L1x rv_vec(Topx), rv_vec(L2x), Botx];
   Lensy = [L1y rv_vec(Topy), rv_vec(L2y), Boty];

   % Parameters for graphing
   Lens_color  = [204, 226, 239]/256;
   Lens_border = 0.3*[1, 1, 1];
   lbw = 1.3; % lens border width
   wavefr_color = [1, 0, 0];
   wavefr_bdw   = 2;
   
   % spacing between wavefronts (both plane and spherical ones)
   spacing = 0.25;

   % 2*H is the height of the plane wavefronts
   H = L1y(N); 

   % theta2 = slope of the line going from the upper-right
   % end of the lens to the focus point
   theta2 = atan(L1y(N)/(f-L1x(N)));

   % Shape of the spherical wavefronts.
   Theta = linspace(-theta2, theta2, N);
   X = -cos(Theta);
   Y =  sin(Theta);

   S = -f; % start ploting waves from here to the right

   % number of frames in the movie
   num_frames = 10;
   Shifts = linspace(0, spacing, num_frames+1);

   % start at S+shift, plot the wavefronts
   for frame_no = 1:num_frames

      shift = Shifts(frame_no);
      
      s = S+shift;

      % plotting window
      figure(1); clf; hold on; axis equal; axis off;

      % plot the plane wavefronts
      while s < 0
         plot([s, s], [-H, H], 'color', wavefr_color, 'linewidth', wavefr_bdw);
         s = s + spacing;
      end
      
   
      % plot the spherical wavefronts
      s = s - 10*spacing; % backtrack a bit
      while s < f
         
         rho = f-s;
         
         if rho*Y(N) <= L1y(N)
            plot(rho*X+f, rho*Y, 'color', wavefr_color, 'linewidth', wavefr_bdw);
         end
         
         s = s + spacing;
         
      end

      % plot the lens
      fill(Lensx, Lensy, Lens_color, 'EdgeColor', Lens_border, 'LineWidth', lbw);
%      get(H)
%      return
      
      % Invisible points to force MATLAB to keep the
      % plotting window fixed.
      tiny = 0.15*spacing;
      white = 0.999*[1, 1, 1];
      plot(S-tiny,   H+tiny, 'color', white);
      plot(S-tiny,  -H-tiny, 'color', white);
      plot(f+tiny,   H+tiny, 'color', white);
      plot(f+tiny,  -H-tiny, 'color', white);

      % Rotate by 90 degrees
      set(gca, 'View', [90, 90])

      % save current file
      frame_file = sprintf('Frame%d.eps', 1000+frame_no);
      disp(frame_file);
      saveas(gcf, frame_file, 'psc2');
      pause(0.07)
   end

% The frames were converted to a movie with the command
% convert -antialias -loop 10000  -delay 8 -compress LZW Frame100* Lens_and_wavefronts.gif
   
function W = rv_vec(V)

   K = length(V);

   W = V;
   for i=1:K
      W(i) = V(K-i+1);
   end

Captions

Siingleline

Items portrayed in this file

depicts

creator

some value

author name string: Oleg Alexandrov
URL: https://commons.wikimedia.org/wiki/user:Oleg_Alexandrov
Wikimedia username: Oleg Alexandrov

copyright status

copyrighted, dedicated to the public domain by copyright holder

copyright license

released into the public domain by the copyright holder

inception

24 November 2007

MIME type

image/gif

File history

Click on a date/time to view the file as it appeared at that time.

Date/TimeThumbnailDimensionsUserComment
current06:35, 25 November 2007183 × 356 (35 KB)Oleg Alexandrovtweak
04:10, 24 November 2007171 × 356 (33 KB)Oleg Alexandrovtweak
04:09, 24 November 2007171 × 356 (33 KB)Oleg Alexandrovtweak
00:56, 24 November 2007171 × 359 (33 KB)Oleg Alexandrovtweak, same license
00:53, 24 November 2007171 × 359 (32 KB)Oleg Alexandrovtweak
00:49, 24 November 2007151 × 359 (31 KB)Oleg Alexandrov{{Information |Description=Illustration of wavefronts after passing through a [:en:lens (optics)|lens]] |Source=self-made with MATLAB |Date=~~~~~ |Author= Oleg Alexandrov |Permission=see below |other_versions= }}
The following pages on the English Wikipedia use this file (pages on other projects are not listed):

Global file usage

The following other wikis use this file:

  • Usage on ar.wikipedia.org
    • مقدمة موجة
    • عدسة (بصريات)
  • Usage on ast.wikipedia.org
    • Lente
  • Usage on be.wikipedia.org
    • Хвалевы фронт
  • Usage on bn.wikipedia.org
    • লেন্স
    • তরঙ্গমুখ
  • Usage on bs.wikipedia.org
    • Talasni front
  • Usage on ckb.wikipedia.org
    • لێنز
  • Usage on cs.wikiversity.org
    • Vlnění a optika (přednáška)
  • Usage on cv.wikipedia.org
    • Хум фрончĕ
  • Usage on en.wikiversity.org
    • Physics for beginners
    • MyOpenMath/Physics images
  • Usage on es.wikipedia.org
    • Lente
  • Usage on es.wikiversity.org
    • Introducción a la Física/Espejos y lentes
  • Usage on eu.wikipedia.org
    • Leiar
  • Usage on fa.wikipedia.org
    • عدسی
  • Usage on fi.wikipedia.org
    • Aaltorintama
  • Usage on fr.wikipedia.org
    • Front d'onde
  • Usage on fr.wikibooks.org
    • Utilisateur:Jean-Jacques MILAN/07 systèmes optiques simples
  • Usage on fy.wikipedia.org
    • Lins (optyk)
  • Usage on ga.wikipedia.org
    • Lionsa (optaic)
  • Usage on he.wikipedia.org
    • שבירה
    • חזית גל
    • משתמש:בנצי/ארגז חול: שבור
  • Usage on hi.wikipedia.org
    • लेंस
  • Usage on hr.wikipedia.org
    • Leća (optika)
    • Širenje valova
  • Usage on hy.wikipedia.org
    • Ոսպնյակներ
    • Մասնակից:Albert Amirbekyan/Ավազարկղ
    • Ալիքային ճակատ
  • Usage on id.wikipedia.org
    • Aberasi optik
  • Usage on lt.wikipedia.org
    • Lęšis (optika)
    • Bangos frontas
  • Usage on lv.wikipedia.org
    • Viļņu fronte
  • Usage on ml.wikipedia.org
    • ലെൻസ്
  • Usage on mn.wikipedia.org
    • Линз
  • Usage on nl.wikipedia.org
    • Golffront
  • Usage on pa.wikipedia.org
    • ਲੈੱਨਜ਼
  • Usage on ru.wikipedia.org
    • Линза
    • Волновой фронт
  • Usage on sh.wikipedia.org
    • Širenje valova
  • Usage on si.wikipedia.org
    • කාච
  • Usage on sl.wikipedia.org
    • Valovno čelo
    • Leča (optika)
  • Usage on sr.wikipedia.org
    • Сочиво (оптика)
    • Сабирно сочиво
  • Usage on sv.wikipedia.org
    • Vågfront
  • Usage on ta.wikipedia.org
    • வில்லை (ஒளியியல்)
    • குவி வில்லை
  • Usage on te.wikipedia.org
    • దృశా శాస్త్రము

View more global usage of this file.

Retrieved from "https://en.wikipedia.org/wiki/File:Lens_and_wavefronts.gif"