Table des matières Python

Interférence de deux ondes

1. Superposition de deux ondes quasi-monochromatiques

On considère deux sources ponctuelles quasi-monochromatiques S1 et S2, de fréquences a priori différentes. Les ondes issues de ces deux sources parviennent en un point M de l'espace avec un temps de propagation noté τ1 pour la première, τ2 pour la seconde. Ce retard peut venir d'une simple propagation dans un milieu homogène, on d'un dispositif optique plus complexe. Au point M, les fonctions d'onde s'ajoutent. La grandeur mesurable en ce point est l'intensité, égale à la moyenne temporelle du carré de la fonction d'onde.

L'onde provenant de la première source s'écrit au point M :

a1(t)=A1cos(2πf1(t-τ1)+ψ1(t-τ1))(1)

La fonction ψ1(t) permet de modéliser le caractère quasi-monochromatique de l'onde. Il s'agit d'une phase constante par morceaux, qui change de valeur aléatoirement avec une période égale au temps de cohérence Δt. Cette fonction est une propriété de la source, indépendante du dispositif optique qui introduit le retard.

Lorsque seule cette onde est présente, l'intensité au point M est :

I1=12A12(2)

On définit de même l'onde au point M provenant de la seconde source :

a2(t)=A2cos(2πf2(t-τ2)+ψ2(t-τ2))(3)

La fonction d'onde résultante au point M est la somme :

a(t)=a1(t)+a2(t)(4)

L'intensité est la moyenne temporelle du carré de la fonction d'onde :

I=I1+I2(5)+A1A2<cos(2π(f1+f2)t-2π(f1τ1+f2τ2)+ψ1(t-τ1)+ψ2(t-τ2))>(6)+A1A2<cos(2π(f1-f2)t-2π(f1τ1-f2τ2)+ψ1(t-τ1)-ψ2(t-τ2))>(7)

Le second terme est nul en raison de la très grande valeur de la fréquence f1+f2 par rapport à l'inverse du temps de réponse des capteurs. Le dernier terme est le terme d'interférence :

I12 = 2I1I2<cos(2π(f1-f2)t-2π(f1τ1-f2τ2)+ψ1(t-τ1)-ψ2(t-τ2))>(8)

Soit θ un temps de l'ordre du temps de réponse du capteur (supérieur à une microseconde). Le terme d'interférence est proportionnel à la fonction suivante :

γ12(τ1,τ2)=1θ0θcos(2π(f1-f2)t-2πf(f1τ1-f2τ2)+ψ1(t-τ1)-ψ2(t-τ2))dt(9)

On dit qu'il y a interférence si γ12 est non nul.

Pour que le terme soit non nul, il faut que les deux fréquences soient égales. On introduit la différence des retards :

τ=τ2-τ1(10)

Un changement d'origine du temps permet d'écrire :

γ12(τ)=1θ0θcos(2πfτ+ψ1(t)-ψ2(t-τ))dt(11)

2. Simulation

import numpy
import numpy.random
from matplotlib.pyplot import *
            

Pour le calcul numérique, on pose T=1. L'échelle de temps est donc la période d'oscillation de l'onde.

La fonction suivante génère les échantillons d'une fonction ψ, à raison d'un échantillon par période. n est le nombre de point total, p est le temps de cohérence :

def psi(n,p):
    x = (numpy.random.sample(n)-0.5)*2*numpy.pi
    y = numpy.repeat(x,p)
    return y             
             

Voici deux séries d'échantillons indépendantes :

n=50000 # nombre de periodes
p=30 # temps de coherence
psi1 = psi(n,p)
psi2 = psi(n,p)

figure(figsize=(12,6))
plot(psi1,'b')
plot(psi2,'r')
ylabel('psi')
xlabel('t')
axis([0,3000,-numpy.pi,numpy.pi])
grid()
             
figAfigA.pdf

La fonction suivante calcule le terme d'interférence pour un retard donné :

def interference(tau,psi1,psi2):
    psi = numpy.roll(psi1,int(tau))-psi2
    cos = numpy.cos(2*numpy.pi*tau+psi)
    return numpy.mean(cos)
             

Voici le tracé de γ12 en fonction de τ pour deux ondes incohérentes :

tau = numpy.linspace(0,20,300)
N = tau.size
I = numpy.zeros(N)
for k in range(N):
    I[k] = interference(tau[k],psi1,psi2)
    
figure()
plot(tau,I)
xlabel("tau")
ylabel("Interference")
axis([0,tau.max(),-1,1])

             
figBfigB.pdf

Voici le même tracé avec deux sources cohérentes :

for k in range(N):
    I[k] = interference(tau[k],psi1,psi1)
    
figure()
plot(tau,I)
xlabel("tau")
ylabel("Interference")
axis([0,tau.max(),-1,1])

             
figCfigC.pdf

Le temps de cohérence est ici égal à 30. Le contraste des interférences est important si le retard est faible devant le temps de cohérence.

Creative Commons LicenseTextes et figures sont mis à disposition sous contrat Creative Commons.