Vous êtes sur la page 1sur 1

Université de Strasbourg

Faculté de Physique et Ingénierie

DM1 Python L2 Physique

Relation de dispersion des ondes sur l’eau


La description de phénomènes naturels comme les vagues scélérates, tsunamis, mascarets, … nécessite
de comprendre la propagation d’ondes à la surface de l’eau. L’eau est un milieu dispersif, i.e., la célérité
des ondes dépend de la fréquence. La relation de dispersion est donnée par la formule de Kelvin :
  
 2   gk  k 3  tanh(hk ),
  
où g=9.81 m/s est l’accélération de la pesanteur, σ=0.067 N/m la tension superficielle de l’eau,  la
2

masse volumique de l’eau, h la hauteur de l’eau et k le vecteur d’onde donné par k=2π/λ (λ étant la
longueur d’onde).
Au semestre L2-S4, lors des travaux pratiques, vous effectuerez des mesures montrant que l’eau est un
milieu dispersif. Dans l’objectif de comparer théorie et expérience, vous pouvez effectuer des
prévisions basées sur la formule de Kelvin. Le matériel dont vous disposez permettra de faire varier la
fréquence dans la gamme 11 à 50 Hz et la hauteur d’eau dans la gamme 0 à 1cm.

1. Représenter graphiquement la fréquence et la vitesse de phase en fonction de la longueur


d’onde pour différentes hauteurs de l’eau dans la cuve. Pour ce faire utiliser un pas de 5 cm.
2. Interpoler vos résultats (pas de 1 cm) en utilisant la fonction interp1d de scipy.interpolate et
représenter graphiquement les nouveaux résultats.
3. Vérifier que l’interpolation est bonne. Pour ce faire, refaites la première question avec un pas de
1 cm et représenter graphiquement vos résultats et comparer les à ceux obtenus par
interpolation.
4. Représenter graphiquement la vitesse de phase en fonction de la hauteur de l’eau dans la cuve
pour différentes longueurs d’ondes.
5. Représenter graphiquement la longueur d’onde en fonction de la hauteur de l’eau pour
différentes fréquences. Pour ce faire, écrire une fonction Python qui permettra de trouver les
zéros d’une fonction non linéaire et vérifier le résultat à celui produit par la fonction fsolve de
scipy.optimize.

Vous aimerez peut-être aussi