Wellenausbreitung

Aus Physik
Wechseln zu: Navigation, Suche

Einleitung

Der Inhalt des Projektes ist eine Matlab-Implementierung einer einfachen numerische Simulation der zeitliche Ausbreitung von Wellen im Raum, gegeben durch die Wellengleichung, und die Visualisierung der Ergebnisse. Dazu wird die Methode der Finiten Differenzen (FDM) verwendet. Das Ziel ist einerseits, Effekte wie Absorption, Reflektion und Brechung an Mediengrenzen sowie Absorption im Medium "anschauen" zu koennen, hauptsächlich aber die Verbesserung der Matlab-Kenntnisse des Autors. Folglich ist der genaue Inhalt nicht von vorn herein festgelegt und die Arbeit eher experimenteller Natur.

Mathematischer Hintergrund

Die Gleichung für die Wellenausbreitung mit Ausbreitungsgeschwindigkeit c lautet

 c^2 \sum_{i=1}^{n} \left( \frac{\partial^2 u}{\partial x_i^2} \right) - \frac{\partial^2 u}{\partial t^2} = 0.

Näherungslösungen können numerisch berechnet werden, in diesem Fall mit der "Methode der finiten Differenzen" (FDM, siehe Link 1). Dabei werden die Differentialquotienten durch Differenzenquotienten

 
\frac{\partial u}{\partial x} \approx \frac{u(x+h)-u(x-h)}{2h}
 
\frac{\partial^2 u}{\partial x^2} \approx \frac{u(x+h)-2u(x)+u(x-h)}{h^2}

ersetzt.

Ergebnisse

Hier können Grafiken und Matlab-Files betrachtet und heruntergeladen werden. Auf die genaue Erläuterungen wird hier verzichtet, da das den Rahmen eines kleinen Projektes sprengen würde. Die Parameter, mit denen gearbeitet wurde, sind in den .m-Files ersichtlich.

Fehler beim Erstellen des Vorschaubildes: convert: no decode delegate for this image format `' @ error/constitute.c/ReadImage/501.
convert: no images defined `/tmp/transform_0e76b5829223-1.png' @ error/convert.c/ConvertImageCommand/3210.
Figure 1: Auslenkungen nach 10 Zeitschritten (wave1.m)

wave1.m und wave1_steps.m sind der erste Versuch, sich an das Problem heranzutasten. In wave1_steps.m ist die FDM mit 3 Raum- und einer Zeitdimension in verschachtelten Schleifen implementiert. wave1.m erstellt daraus eine Grafik (Figure 1). Sie stellt die Amplitude der Welle in einer Ebene nach einigen Zeitschritten dar.

Fehler beim Erstellen des Vorschaubildes: convert: no decode delegate for this image format `' @ error/constitute.c/ReadImage/501.
convert: no images defined `/tmp/transform_3bfe5bf37b54-1.png' @ error/convert.c/ConvertImageCommand/3210.
Figure 2: Auslenkung im Mittelpunkt nach der Zeit t (wave2.m)

wave2.m und wave2_steps.m sind eine Verbesserung von wave1.m wave1_steps.m. Die Variante ist eleganter, da hier statt vier geschachtelter Schleifen nur mehr eine und sonst Matrixoperationen eingesetzt werden.

Links

1. Skript zur numerischen Raumakustik