| Inhalt |
Wir betrachten jetzt das physikalische Pendel: ein beliebiger starrer Körper, der um eine feste, reibungsfreie Achse im Schwerefeld schwingen kann. Ziel: Herleitung der Bewegungsgleichungen und ein Python-Programm für Weg-, Geschwindigkeits- und Beschleunigungs-Zeit-Funktionen.
Physikalisches Pendel = starrer Körper mit
Wir beschreiben die Auslenkung durch den Winkel $ (t) $ gegenüber der lotrechten Gleichgewichtslage.
Typische Skizzen:
Konvention:
Es wirken:
Hebelarm der Gewichtskraft bezüglich ist . Komponente der Gewichtskraft tangential zur Bahn (d.h. senkrecht zum Hebelarm):
Das zugehörige Drehmoment (Betrag) um :
Vorzeichen: Für positive Auslenkung $ $ wirkt das Drehmoment rücktreibend (Richtung kleinere $ $), daher das Minuszeichen.
Rotationsdynamik um :
Einsetzen des Drehmoments:
Dies ist die exakte Bewegungsgleichung des physikalischen Pendels:
Sie ist nichtlinear (wegen $ $).
Für kleine Auslenkungen (in Radiant):
Dann wird die Gleichung linear:
Vergleich mit der Standardform der harmonischen Schwingung
liefert
Allgemeine Lösung:
Für typische Anfangsbedingungen
ergibt sich:
also
Die Schwingungsperiode:
Wir können zwei Arten von “Weg” betrachten:
Sei die Bogenlänge relativ zur Ruhelage, dann gilt
Mit der Kleinwinkellösung:
Bogenweg:
In vielen Aufgaben nimmt man $ (t) $ selbst als Weggröße.
Winkelgeschwindigkeit:
Tangentialgeschwindigkeit des Schwerpunkts:
Winkelbeschleunigung:
Tangentialbeschleunigung:
Da $ _0^2 = $, kann man schreiben:
Oft betrachtet man in der Theorie einfach die Winkelbewegung
in Analogie zur linearen harmonischen Schwingung.
Entwicklung des Python-Programms “2512022312_PhysikalischesPendel.py” :
Dann verwenden wir die Kleinwinkellösung
und plotten:
Download “2512022312_PhysikalischesPendel.py”
import numpy as np
import matplotlib.pyplot as plt
# Physikalische Parameter
g = 9.81 # Erdbeschleunigung [m/s^2]
m = 1.0 # Masse [kg] (nur fuer omega0 relevant)
d = 0.5 # Abstand Schwerpunkt - Drehpunkt [m]
I = 0.4 # Traegheitsmoment um den Drehpunkt [kg*m^2]
# Anfangsauslenkung (kleiner Winkel) in Grad
phi0_deg = 10.0
phi0 = np.deg2rad(phi0_deg) # Anfangswinkel in rad
# Eigenkreisfrequenz des physikalischen Pendels (Kleinwinkelnäherung)
omega0 = np.sqrt(m * g * d / I)
# Zeitachse: mehrere Perioden
T = 2.0 * np.pi / omega0 # Periodendauer
t_max = 5.0 * T # z.B. 5 Perioden
t = np.linspace(0, t_max, 1000)
# Weg-Zeit-Funktionen (Winkel und Bogenlaenge)
phi = phi0 * np.cos(omega0 * t) # Winkel
s = d * phi # Bogenlaenge des Schwerpunkts
# Geschwindigkeits-Zeit-Funktionen
phi_dot = -phi0 * omega0 * np.sin(omega0 * t) # Winkelgeschwindigkeit
v_tan = d * phi_dot # tangentiale Geschwindigkeit
# Beschleunigungs-Zeit-Funktionen
phi_ddot = -phi0 * omega0**2 * np.cos(omega0 * t) # Winkelbeschleunigung
a_tan = d * phi_ddot # tangentiale Beschleunigung
# 1) Weg-Zeit-Funktion (Winkel)
plt.figure()
plt.plot(t, phi)
plt.xlabel("Zeit t [s]")
plt.ylabel("Winkel phi(t) [rad]")
plt.title("Physikalisches Pendel: Winkel-Zeit-Funktion (Kleinwinkelnäherung)")
plt.grid(True)
# Optional: Bogenlaenge s(t)
plt.figure()
plt.plot(t, s)
plt.xlabel("Zeit t [s]")
plt.ylabel("Bogenlaenge s(t) [m]")
plt.title("Physikalisches Pendel: Bogenlaenge s(t)")
plt.grid(True)
# 2) Geschwindigkeit-Zeit-Funktion
plt.figure()
plt.plot(t, phi_dot)
plt.xlabel("Zeit t [s]")
plt.ylabel("Winkelgeschwindigkeit dphi/dt [rad/s]")
plt.title("Physikalisches Pendel: Winkelgeschwindigkeit-Zeit-Funktion")
plt.grid(True)
# Optional: Tangentialgeschwindigkeit
plt.figure()
plt.plot(t, v_tan)
plt.xlabel("Zeit t [s]")
plt.ylabel("Tangentialgeschwindigkeit v_tan(t) [m/s]")
plt.title("Physikalisches Pendel: Tangentialgeschwindigkeit")
plt.grid(True)
# 3) Beschleunigungs-Zeit-Funktion
plt.figure()
plt.plot(t, phi_ddot)
plt.xlabel("Zeit t [s]")
plt.ylabel("Winkelbeschleunigung d2phi/dt2 [rad/s^2]")
plt.title("Physikalisches Pendel: Winkelbeschleunigung-Zeit-Funktion")
plt.grid(True)
# Optional: Tangentialbeschleunigung
plt.figure()
plt.plot(t, a_tan)
plt.xlabel("Zeit t [s]")
plt.ylabel("Tangentialbeschleunigung a_tan(t) [m/s^2]")
plt.title("Physikalisches Pendel: Tangentialbeschleunigung")
plt.grid(True)
plt.show()
Zum Experimentieren:
| Inhalt |