Image:Interferenz.jpg

Un article de Wikipédia, l'encyclopédie libre.

Ci-dessous, retrouvez page de description du fichier provenant de Commons.

Simuliertes Interferenzbild zweier punktförmiger Quellen mit gleicher Wellenlänge. Die Lagen der Quellen sind durch Kreuze gekennzeichnet, die Maxima beider Wellen durch farbige Kreise.


Ich bin der Autor dieses Bildes und stelle es unter der GFDL zur Verfügung. --Dr. Schorsch 12:32, 19 Apr 2005 (UTC)


I, the copyright holder of this work, have published or hereby publish it under the following license:
GNU head Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation license, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free Documentation license".

Aragonés | العربية | Asturianu | Български | বাংলা | ইমার ঠার/বিষ্ণুপ্রিয়া মণিপুরী | Brezhoneg | Bosanski | Català | Cebuano | Česky | Dansk | Deutsch | Ελληνικά | English | Esperanto | Español | Eesti | Euskara | فارسی | Suomi | Français | Gaeilge | Galego | עברית | Hrvatski | Magyar | Bahasa Indonesia | Ido | Íslenska | Italiano | 日本語 | ქართული | ភាសាខ្មែរ | 한국어 | Kurdî / كوردی | Latina | Lëtzebuergesch | Lietuvių | Bahasa Melayu | Nnapulitano | Nederlands | ‪Norsk (nynorsk)‬ | ‪Norsk (bokmål)‬ | Occitan | Polski | Português | Română | Русский | Slovenčina | Slovenščina | Shqip | Српски / Srpski | Svenska | తెలుగు | ไทย | Türkçe | Українська | اردو | Tiếng Việt | Volapük | Yorùbá | ‪中文(中国大陆)‬ | ‪中文(台灣)‬ | +/-


This is the source code of the program i used to create this image. The following program is under the GNU General Public License (GPL).

GNU head This work is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or any later version. This work is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See version 2 and version 3 of the GNU General Public License for more details.

العربية | Català | Česky | Deutsch | Ελληνικά | English | Español | فارسی | Français | Italiano | 日本語 | Nederlands | Polski | Português | Русский | Slovenčina | Svenska | Türkçe | ‪中文(简体)‬ | ‪中文(繁體)‬ | +/-

; Program Written in IDL (Interactive Data Language)
; Free Interpreter availible at www.rsinc.com
; Written by Georg Wiora
; This Program is under the  GNU General Public License (GPL)  
;
; Create a display of interference patterns
; Save this text as file "Interference2.pro" to run it.
 
; Draw a circle
PRO circle,x,y,r,_REF_EXTRA=ex
  n=ULONG(!DPI*r) > 1
  phi = FINDGEN(n)/FLOAT(n)*2*!DPI
  x1 = r*COS(phi)+x
  y1 = r*SIN(phi)+y
  PLOTS,[x1,x1[0]],[y1,y1[0]],_STRICT_EXTRA=ex
END

; Compute the interference
PRO Interference2
   ; Final Image Size
  siz=2000
  ; No display if larger than 800x1600 pixel
  pixmap=SIZ GT 800
  ; Wavelength in Pixel
  lambda=160
  ; Half distance of the sources
  dhalb = lambda

  ; Compute the distance of each point in an array from the
  ; center point: This is the phase of the signal
  d1 = SHIFT(DIST(siz*2,siz),siz,siz/2)
  ; Sinus of distace with 0 LE amplitude LE 2
  f = SIN(d1/lambda*2*!DPI)+1
  ; Compute Interference
  inter = SHIFT(f,-dhalb,0)+SHIFT(f,dhalb,0)
  ; Get maximum and minimum
  ma = MAX(inter,MIN=mi)
  ; Two colors are reserved for marking, the rest is gray scale
  ; Scale interference to byte range [0..253]
  inter = BYTE((TEMPORARY(inter)-mi)/(ma-mi)*253)

  ; Use lookup table to display
  DEVICE,DECOMPOSED=0
  ; Gray scale
  LOADCT,0
  ; Half length of center cross bars in pixel
  cs=30
  ; Half width of center cross bars in pixel
  cb=3
  
  ; Set mark for center
  ; Horizontal left
  inter[siz-dhalb-cs:siz-dhalb+cs, siz/2-cb:siz/2+cb] = 254
  ; Vertical left
  inter[siz-dhalb-cb:siz-dhalb+cb, siz/2-cs:siz/2+cs] = 254
  ; Horizontal right
  inter[siz+dhalb-cs:siz+dhalb+cs, siz/2-cb:siz/2+cb] = 255
  ; Vertical right
  inter[siz+dhalb-cb:siz+dhalb+cb, siz/2-cs:siz/2+cs] = 255

  ; Open a visible or invisible window (depends on pixmap flag)
  WINDOW,XSIZE=2*siz,YSIZE=siz,PIXMAP=pixmap
  ; Display the interference (only gray scale!)
  TV,inter
  ; Draw circles on maximum locations   
  FOR i=0,2.5*siz/lambda DO $
  BEGIN
    ; Maximum location left
    circle,siz-dhalb,siz/2,(i+0.25)*lambda,THICK=6,/DEVICE,COLOR=254
    ; Maximum location right
    circle,siz+dhalb,siz/2,(i+0.25)*lambda,THICK=6,/DEVICE,COLOR=255
  ENDFOR

  ; Colortable 0-253 as gray scake
  r = FINDGEN(256)/253*255
  g=r
  b=r
  ; 254 is green
  r[254]=0
  b[254]=0
  g[254]=255
  ; 255 is red
  r[255]=255
  b[255]=0
  g[255]=0

  ; Read image from display
  im=TVRD()
  ; Crop invalid borders
  im = im[siz/2:3*siz/2-1,*]

  ; Save as PNG with colortable
  WRITE_PNG,'Interference2.png',im,r,g,b
  ; Convert to truecolor and write JPEG
  imt = [[[r[im]]],[[g[im]]],[[b[im]]]]
  ; smooth image a little bit (saves bandwith in jpeg and is OK
  ; with high resolution)
  imt[*,*,0] = SMOOTH(imt[*,*,0],3,/EDGE_TRUNCATE)
  imt[*,*,1] = SMOOTH(imt[*,*,1],3,/EDGE_TRUNCATE)
  imt[*,*,2] = SMOOTH(imt[*,*,2],3,/EDGE_TRUNCATE)
  ; Write as jpeg
  WRITE_JPEG,'Interference2.jpg',TEMPORARY(imt),/PROGRESSIVE,$
             QUALITY=90, TRUE=3 
END

Historique du fichier

Cliquer sur une date et une heure pour voir le fichier tel qu’il était à ce moment-là

Date et heureDimensionsUtilisateurCommentaire
actuel19 avril 2005 à 16:262 000×2 000 (634 Kio)Xorx
19 avril 2005 à 14:282 000×2 000 (310 Kio)Xorx (Simuliertes Interferenzbild zweier punktförmiger Quellen mit gleicher Wellenlänge. {{GFDL}})

La page ci-dessous contient cette image :