Fichier:Interferenz.jpg
Ce fichier provient de Wikimedia Commons et peut être utilisé par d'autres projets. Sa description sur sa page de description est affichée ci-dessous.
Description
| DescriptionInterferenz.jpg |
Deutsch: 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. |
| Date | |
| Source | Travail personnel |
| Auteur | Dr. Schorsch 12:32, 19 Apr 2005 (UTC) (Dr. Schorsch (talk)) |
Conditions d’utilisation
| Vous avez la permission de copier, distribuer et modifier ce document selon les termes de la GNU Free Documentation License version 1.2 ou toute version ultérieure publiée par la Free Software Foundation, sans sections inaltérables, sans texte de première page de couverture et sans texte de dernière page de couverture. Un exemplaire de la licence est inclus dans la section intitulée GNU Free Documentation License.http://www.gnu.org/copyleft/fdl.htmlGFDLGNU Free Documentation Licensetruetrue |
- Vous êtes libre :
- de partager – de copier, distribuer et transmettre cette œuvre
- d’adapter – de modifier cette œuvre
- Sous les conditions suivantes :
- paternité – Vous devez donner les informations appropriées concernant l'auteur, fournir un lien vers la licence et indiquer si des modifications ont été faites. Vous pouvez faire cela par tout moyen raisonnable, mais en aucune façon suggérant que l’auteur vous soutient ou approuve l’utilisation que vous en faites.
- partage à l’identique – Si vous modifiez, transformez ou vous basez sur cet élément, vous devez distribuer votre contribution sous une license identique ou compatible à celle de l’original.
Source Code
This is the source code of the program I used to create this image. Click on “Show source code” to display it.
The following program is under the GNU General Public License (GPL).
|
Cette œuvre est un logiciel libre ; vous pouvez la redistribuer ou la modifier suivant les termes de la Licence publique générale GNU telle que publiée par la Free Software Foundation, soit la version 2 de cette License, soit une version ultérieure. Cette œuvre est distribuée dans l’espoir qu’elle sera utile, mais sans aucune garantie, pas même la garantie implicite de commercialisabilité ni celle d’adéquation à un besoin particulier. Consultez la version 2 et la version 3 de la GNU General Public License pour plus de détails.http://www.gnu.org/licenses/gpl.htmlGPLGNU General Public Licensetruetrue |
; 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
Légendes
Éléments décrits dans ce fichier
dépeint
19 avril 2005
Historique du fichier
Cliquer sur une date et heure pour voir le fichier tel qu'il était à ce moment-là.
| Date et heure | Vignette | Dimensions | Utilisateur | Commentaire | |
|---|---|---|---|---|---|
| actuel | 19 avril 2005 à 15:26 | 2 000 × 2 000 (634 kio) | wikimediacommons>Xorx |
Utilisation du fichier
La page suivante utilise ce fichier :