Маятник: малые и большие углы
Когда приближение малых углов ломается: период маятника растёт с амплитудой.
Математический маятник — груз на невесомой нити; его уравнение
θ'' = -(g/L)·sin θнелинейно, и точная формула периода для больших амплитуд отсутствует.
Линейное приближение и его границы
Уравнение маятника содержит sin θ, и это делает его нелинейным. Школьная физика спасается приближением: при малых углах sin θ ≈ θ, и маятник становится обычным гармоническим осциллятором с периодом T = 2π√(L/g), не зависящим от амплитуды. Но это приближение, верное лишь для малых качаний. Для больших амплитуд формула врёт, а точного выражения через элементарные функции не существует — здесь нужна симуляция.
Симуляция: период растёт с амплитудой
Решим полное нелинейное уравнение и измерим период при разных начальных углах. Маятник стартует из крайней точки (скорость 0); период — время возврата в ту же точку:
import math
g, L = 9.8, 1.0
def period_sim(theta0):
theta, omega = theta0, 0.0
dt = 0.0002
t = 0.0
while True:
alpha = -(g/L)*math.sin(theta)
omega += alpha*dt
theta += omega*dt
t += dt
if t > 0.1 and theta >= theta0 and omega >= 0:
return t
T_small = 2*math.pi*math.sqrt(L/g)
print(f"Формула малых углов: T = 2π√(L/g) = {T_small:.4f} c")
for deg in (10, 45, 90, 170):
Tn = period_sim(math.radians(deg))
print(f"амплитуда {deg:3d}°: T_числ = {Tn:.4f} c (T/T_малых = {Tn/T_small:.3f})")Вывод:
Формула малых углов: T = 2π√(L/g) = 2.0071 c амплитуда 10°: T_числ = 2.0108 c (T/T_малых = 1.002) амплитуда 45°: T_числ = 2.0872 c (T/T_малых = 1.040) амплитуда 90°: T_числ = 2.3690 c (T/T_малых = 1.180) амплитуда 170°: T_числ = 4.8960 c (T/T_малых = 2.439)
Картина ясна. При 10° численный период (2.011 c) почти точно совпадает с формулой малых углов (2.007 c) — приближение работает. Но с ростом амплитуды период растёт: при 90° он на 18% больше, а при 170° — почти в 2.5 раза. Большой маятник качается заметно медленнее, чем предсказывает школьная формула. Это анизохронность — следствие нелинейности.
Физический маятник
Реальный маятник — не точка на нити, а протяжённое тело (стержень, диск). У него вместо длины L в формулу входит приведённая длина через момент инерции I: период T = 2π√(I/(mgd)), где d — расстояние от оси до центра масс. Качественно поведение то же: малые колебания изохронны, большие — замедляются. Симуляция меняется лишь заменой коэффициента при sin θ.
Как работает под капотом
Почему период растёт с амплитудой? У больших углов sin θ меньше самого θ, значит возвращающая сила слабее, чем у линейной пружины. Слабее сила — медленнее возврат — дольше период. Вблизи 180° (маятник почти на вершине) сила возврата стремится к нулю, и период неограниченно растёт: маятник может «зависнуть» в верхней точке сколь угодно долго. Точная формула периода выражается через эллиптический интеграл — функцию, которую саму считают численно.
Частые ошибки
- Применять формулу
2π√(L/g)к большим качаниям. При 90° она ошибается на 18%, при 170° — в разы. - Заменять
sin θнаθв симуляции. Тогда вы моделируете пружину, а не маятник, и теряете всю нелинейную физику. - Слишком крупный шаг у большой амплитуды. Быстрый проход через нижнюю точку требует мелкого
dt.
Итоги
- Уравнение маятника нелинейно из-за
sin θ; точной формулы периода нет. - При малых углах работает приближение
2π√(L/g), при больших — нет. - Период растёт с амплитудой (анизохронность): при 170° — в 2.5 раза.
- Физический маятник отличается лишь моментом инерции в коэффициенте.