Die schwingende Kette

Das Projekt Die schwingende Kette ist ein zentrales Beispiel eines schwingenden Massensystems, ein Problem aus der klassischen Mechanik (siehe Walter Greiner, 'Klassische Mechanik II' [8. Auflage, 2008, Kapitel I7. Seite 76]). Das System besteht aus einem masselosen Faden, der mit $N+1$ Massenpunkten (Dingen, Teilchen, Perlen) besetzt ist. Die $N+1$ 'Perlen' sollen in diesem Projekt als Objekte einer Klasse programmiert werden. Jede Perle besitzt eine ganzzahlige Instanzvariable $n$ (die Nummer der Perle) und die erste ($n=0$) und letzte Perle ($n=N+1$) wird so befestigt, dass sie sich nicht im Raum bewegen können. Beschreibt man das System im zweidimensionalen Raum und spannt die erste Perle bei ($x_0=0$ ,$y_0=0$) und die letzte Perle bei ($x_0=L$ ,$y_0=0$) ein, so soll eine über den gesamten Faden konstante Fadenspannung $T$ entstehen. Die Perlen seien in äquidistanten Abständen $a$ auf dem Faden angeordnet und die Auslenkung aus der Ruhelage in y-Richtung sei relativ klein, sodass die geringfügige Auslenkung in x-Richtung zu vernachlässigbar ist. Betrachten Sie somit zunächst den Fall einer ausschließlich vertikalen Auslenkung der Teilchen.

Die y-Auslenkung des $n$-ten Teilchens $y_n$ wird durch die Auslenkung des ($n-1$)-ten Teilchens $y_{n-1}$ und des ($n+1$)-ten Teilchens $y_{n+1}$ beeinflusst. Die rücktreibenden Kräfte $\vec{F}_{n-1}$ und $\vec{F}_{n+1}$ besitzen die folgende Form \[ \begin{eqnarray} \vec{F}_{n-1} &=& - \left( T \cdot \hbox{sin}(\alpha_{n-1}) \right) \, \vec{e}_y \underbrace{\approx}_{\hbox{lineare Näherung}} - T \left( \frac{y_n - y_{n-1}}{a} \right) \, \vec{e}_y \\ \vec{F}_{n+1} &=& - \left( T \cdot \hbox{sin}(\alpha_{n+1}) \right) \, \vec{e}_y \underbrace{\approx}_{\hbox{lineare Näherung}} - T \left( \frac{y_n - y_{n+1}}{a} \right) \, \vec{e}_y \quad , \end{eqnarray} \] wobei $\alpha_{n-1}$ der mit der Horizontalen eingeschlossene Auslenkungswinkel zum ($n-1$)-ten Teilchen und $\alpha_{n+1}$ der Winkel zu seinem anderen Nachbarn, dem($n-1$)-ten Teilchen ist. Die Bewegungsgleichung des $n$-ten Teilchens in der linearen Näherung lautet somit: \[ \begin{eqnarray} m_n \, \frac{d^2 y_n}{dt^2} \, \vec{e}_y = \vec{F}_{n-1} + \vec{F}_{n+1} &=& - T \left( \frac{y_n - y_{n-1}}{a} \right) \, \vec{e}_y - T \left( \frac{y_n - y_{n+1}}{a} \right) \, \vec{e}_y \qquad \Leftrightarrow \\ \frac{d^2 y_n(t)}{dt^2} &=& \frac{T}{m_n \, a} \left( y_{n-1} - 2 \, y_n + y_{n+1} \right) \quad , \end{eqnarray} \] wobei $m_n$ die Masse des $n$-ten Teilchens ist und der Index $n$ von $n=1$ bis $n=N$ läuft. Die Bewegungsgleichung der schwingenden Kette stellt somit ein System von $N$ Differentialgleichungen zweiter Ordnung dar. Die Bewegungsgleichung für die erste und letzte freie Perle ($n=1$ und $n=N$) vereinfacht sich, da die ganz äußeren Eckperlen eingespannt sind (Randbedingung: $y_0(t)=0$ und $y_{N+1}(t)=0 \, , \,\, \forall \, t \in \,$ℝ) \[ \begin{equation} \frac{d^2 y_1(t)}{dt^2} = \frac{T}{m_1 \, a} \left( - 2 \, y_1 + y_{2} \right) \qquad \hbox{und} \qquad \frac{d^2 y_N(t)}{dt^2} = \frac{T}{m_1 \, a} \left( y_{N-1} - 2 \, y_N \right) \quad . \end{equation} \]

Mögliche Teilaufgaben des Projektes

Schreiben Sie das System von $N$ Bewegungsgleichung in ein System von $2 N$ Differentialgleichungen erster Ordnung um.

Entwerfen Sie ein C++ Programm mit einer Klasse, welche die Perlenkette als einen vector-Container bestehend aus Perlen-Objekten einer anderen Klasse (Klasse Perle) implementiert hat. Innerhalb dieser Klasse soll auch das System von Differentialgleichungen erster Ordnung mittels des Runge-Kutta Ordnung vier Verfahrens gelöst werden.

Betrachten Sie die Fälle $N=2$ und $N=3$ für eine Kette bestehend aus Teilchen gleicher Masse $m_n = m$ und visualisieren Sie ihre Ergebnisse mittels eines Python Skriptes bzw. Jupyter Notebooks (zum Vergleich siehe Walter Greiner, 'Klassische Mechanik II' [8. Auflage, 2008, Kapitel III7. Seite 84]).

Simulieren Sie nun eine Kette bestehend aus einer großen Anzahl an Perlen und vergleichen Sie Ihre Ergebnisse mit dem Kontinuums-Grenzwert der schwingenden Saite (siehe Walter Greiner, 'Klassische Mechanik II' [8. Auflage, 2008, Kapitel I8. Seite 88]).

Betrachten Sie den Fall ungleicher Massen an einem Beispiel.

Betrachten Sie nun den allgemeinen Fall $\vec{F}_{n-1} = - \left( T \cdot \hbox{sin}(\alpha_{n-1}) \right) \, \vec{e}_y$ und $\vec{F}_{n+1} = - \left( T \cdot \hbox{sin}(\alpha_{n+1}) \right) \, \vec{e}_y$ und beziehen zusätzlich auch die Bewegungen der Perlen in x-Richtung in Ihre Berechnungen ein. Erstellen Sie dann ein Beispiel-Simulation mit großen Perlenausschlägen und vergleichen die Ergebnisse mit den Ergebnissen der linearen Näherung. Bauen Sie auch diesen Anwendungsfall sinnvoll in die Klassenstruktur Ihres Programmes ein.