Superposition de deux ondes sinusoïdales de même fréquence¶

Objectif
Représenter, à l’aide d’un langage de programmation, la somme de deux signaux sinusoïdaux périodiques synchrones en faisant varier la phase à l’origine de l’un des deux. Cas particulier des ondes lumineuses.

Q1. Représentation d'une onde progressive sinusoïdale au cours du temps¶

  • Faire varier l’amplitude A et la phase à l’origine φ. Comparer les variations de l’élongation avec l'élongation de référence.
  • Compléter le titre de la courbe et les étiquettes des axes.
In [ ]:
### Import des librairies utiles
from matplotlib import pyplot as plt
from math import pi
import numpy as np

### Initialisations
t=np.linspace(0,4,400) # Définition du tableau des dates en ms 400 dates entre 0 et 4 ms
T=1    # Période commune en ms

### Variables à modifier
# Élongation maximale en m − Tester 0.25E-2, 0.5E-2, ... ⩽ 1.5E-2
A=1.0E-2
# Phase à l'origine − Tester −π, −π/2, 0, π/2, π, k×π ...
phi=-pi/4

### Définition de l'élongation
y=A*np.cos(2*pi*t/T + phi)

############ Ne pas éditer #############
##### Signal de référence et tracé #####
y0=1.5E-2*np.cos(2*pi*t/T)
plt.plot(t,y0,"r:",label='Référence : $0.015×\cos({2\pi}\dfrac{t}{T}+0)$')
########################################

### Courbes
# Tracé des points
plt.plot(t,y,label=r'$A\cos({2\pi}\dfrac{t}{T}+\varphi)$')
# Étiquettes impératives
plt.title("Titre à compléter")
plt.xlabel("Abscisse à compléter")
plt.ylabel("Ordonnée à compléter")
# Limites des axes (min,max)
plt.xlim(0,4)
plt.ylim(-1.6E-2,1.6E-2) # Fixe pour observer l'influence la valeur de A
# Grille et légende
plt.grid()
# Place le coin lower left de la légende aux positions 1, 0.5 de la boite de tracé
plt.legend(bbox_to_anchor=(1, 0.5), loc="lower left")
# Affichage
plt.show()

Q2. Somme des élongations de deux ondes sinusoïdales en un même point au cours du temps¶

  • Compléter le code pour afficher la somme des élongations y1(t) et y2(t).
  • Étudier l'influence de la phase à l'origine de y2(t), φ2, sur la somme des deux ondes.
  • Étudier l'influence des amplitudes A1 et A2 sur la somme lorsque φ2 vaut 0, π/2 et k×π.
  • Compléter le titre de la courbe et les étiquettes des axes.
  • Quelles sont les meilleures valeurs pour un casque antibruit ?
In [ ]:
### Import des librairies utiles
from matplotlib import pyplot as plt
from math import pi
import numpy as np

### Initialisations
t=np.linspace(0,4,400) # Définition du tableau des dates en ms 400 dates entre 0 et 4 ms
T=1    # Période en ms

### Variables à modifier
# Élongation maximale de y1 en mètres ⩽ 1.5E-2
A1=1.5E-2
# Élongation maximale en mètres de y2 ⩽ 1.5E-2
A2=1.4E-2
# Phase à l'origine de y2 − Tester 0, π/2, π/4, π, k×π
phi2=pi/2


### Définition des élongations
y1=***Compléter***
y2=***Compléter***
y3=***Compléter***

### Courbes
# Tracé des point
plt.plot(t,y1,":",label=r'$A_{1}\cos({2\pi}\dfrac{t}{T}+0)$')
plt.plot(t,y2,"--",label=r'$A_{2}\cos({2\pi}\dfrac{t}{T}+\varphi_{2})$')
plt.plot(t,y3,label=r'$A_{1}\cos({2\pi}\dfrac{t}{T})+A_{2}\cos({2\pi}\dfrac{t}{T}+\varphi_{2})$')
# Étiquettes impératives
plt.title("Titre à compléter")
plt.xlabel("Abscisse à compléter")
plt.ylabel("Ordonnée à compléter")
# Limites des axes (min,max)
plt.xlim(0,4)
plt.ylim(-3.1E-2,3.1E-2) # Fixe pour observer l'influence la valeur de A
# Grille et légende
plt.grid()
plt.legend(bbox_to_anchor=(1, 0.5), loc="lower left")
# Affichage
plt.show()

Q3. Interférences d'ondes lumineuses¶

  • Compléter le code pour afficher le carré de la somme des grandeurs lumineuses.
  • Étudier l'influence de la phase à l'origine de a2(t), φ2, sur l'intensité lumineuse reçue.
  • Étudier l'influence des amplitudes A1 et A2 sur l'intensité lumineuse lorsque φ2 vaut 0, π/2 et k×π.
  • Compléter le titre de la courbe et les étiquettes des axes.
In [ ]:
### Import des librairies utiles
from matplotlib import pyplot as plt
from math import pi
import numpy as np

### Initialisations
t=np.linspace(0,4,400) # Définition du tableau des dates en ms 400 dates entre 0 et 4 ms
T=1    # Période en ms

### Variables à modifier
# Grandeur lumineuse maximale de a1 ⩽ 1.5
A1=1.5
# Grandeur lumineuse maximale de a2 ⩽ 1.5
A2=1.5
# La phase à l'origine de a2
phi2=pi/4

### Définition des grandeurs lumineuses
a1=***Compléter***
a2=***Compléter***
### Carré de la somme
a3=***Compléter***

### Intensité lumineuse
# Valeur max de a3
max=np.max(a3)
# La valeur moyenne de cos² est 1/2
intensite=max/2
# Affichage
print("L'intensité lumineuse reçue vaut", np.round(intensite,2), "W/m²")

### Courbes
# Tracé des point
plt.plot(t,a1,"--",label='Grandeur lumineuse 1')
plt.plot(t,a2,":",label='Grandeur lumineuse 2')
plt.plot(t,a3,label='Carré de la somme des grandeurs lumineuses')
# Étiquettes impératives
plt.title("Titre à compléter")
plt.xlabel("Abscisse à compléter")
plt.ylabel("Ordonnée à compléter")
# Limites des axes (min,max)
plt.xlim(0,4)
plt.ylim(-1.6,9.1) # Fixe pour observer l'influence la valeur de A
# Grille et légende
plt.grid()
plt.legend(bbox_to_anchor=(1, 0.5), loc="lower left")
# Affichage
plt.show()