1.7. Обыкновенные дифференциальные уравнения
Последняя задача о гармоническом осцилляторе:
(a) Добавим синусоидальную вынуждающую силу с частотой, немного отличающейся от собственной частоты ω, пусть ωd = 1.1ω.
Решите в Maple это ДУ и нарисуйте результат для интервала от t = 0 до t = 300 при ω = 1 и τ = 30. Начальные условия – полный покой: y(0) = 0 и .
График должен показать классическую картину управляемо затухающего гармонического осциллятора: вначале он запускается с некоторыми биениями между собственной и вынуждающей частотами, а затем переходит в состояние колебаний с y(t), которое совпадает с вынуждающей частотой. Проверьте графически, что конечная частота колебаний y(t)– это ωd.
Подсказка: чтобы при переходе к части (b) избежать повторяющегося решения ДУ с разными значениями параметра, заставьте Maple решить ДУ символьно с переменными ω, τ и ωd, затем нарисуйте его с определенными значениями, применив команду subs, как ниже (здесь f – это просто пример):
- > f:=cos(w*t)/(1+s^2*t^2);
- > plot(subs(w=2,s=3,f),t=0..5);
(b) Исследуйте резонанс в этой системе, делая графики y(t) для следующих случаев:
(i) τ = 30 : ωd = 0.8ω, ωd = ω и ωd = 1.2ω
(ii) τ = 5 : ωd = 0.8ω, ωd = ω и ωd = 1.2ω
(iii) τ = 0.8 : ωd = 0.8ω, ωd = ω и ωd = 1.2ω
Проверьте, что если время затухания удлиняется, то амплитуда резонанса становится больше и резонанс становится уже. При построении этих графиков используйте subs, как в конце части (a).
(c) Путем подстановки догадки из части (a) в разные части ДУ
Затем потребуйте, чтобы в получившемся уравнении cos(ωdt) и sin(ωdt) были по отдельности равны (это независимые функции) и в результате получились два уравнения для двух неизвестных A и φ (для эффективного разделения уравнения на две части см. команду collect в главе 9). Решите эти два уравнения и проверьте, что формула для A(ωd) соответствует амплитуде установившегося состояния, которую вы нашли в части (b). В конце сделайте графики A(ωd) и φ(ωd) для трех величин τ, указанных в части (b), и снова проверьте, что большое время затухания τ приводит к большим и более узким (острым) резонансам.
Запишем уравнения движения заряженной частицы массой m и зарядом q в постоянном магнитном поле B, направленном по оси z, и в постоянном электрическом поле E, направленном по оси y.
Для решения запишем закон Ньютона с добавлением силы Лоренца:
ДУ записываются так:
Запишите эти уравнения в Maple и решите их при q = –1.6 · 10 -19; , m = 9.11 · 10 -31, B = 0.2, E = 3000 с начальными условиями x(0) = 0, y(0) = 0, vx(0) = 105, vy(0) = 0.
Сделайте графики орбит частицы x(t) и y(t) в плоскости xy (это должны быть параметрические графики с параметром t). Придется подобрать правильный диапазон интервала для рисования (если выберете что-то простое, вроде 1 или 2, то получите ерунду).
Подумайте о физической стороне проблемы, особенно – о циклотронной частоте: .
С помощью опции scaling = constrained постройте графики vx(t) в плоскости xy. Увидите, что скорость идет по кругу (циклотронное движение), но со сдвигом. Проверьте, что сдвиг скорости (называется «дрейф скорости») задается выражением .
Учтем трение о воздух при игре в бейсбол в атмосфере.
Сила сопротивления воздуха:
где Cd – коэффициент сопротивления (≈ 0.35 в бейсболе); ρair – плотность воздуха (≈ 1.2 кг/м3); r – радиус мяча (≈ 0.037 м); v – векторная скорость мяча.
Абсолютные значения величин в формуле гарантируют от того, что Maple выдаст в решении формулы. Вертикальное направление обозначим у, а горизонтальное х. Тогда второй закон Ньютона в векторном виде записывается следующим набором ДУ первого порядка:
где m – масса мяча (0.145 кг), g – ускорение свободного падения (9.8 м/с2).
Кодируя четыре ДУ, задайте задачу Maple и задайте hit home run {очень сильный удар в бейсболе} при начальных условиях
Для решения используйте dsolve(...type = numeric) и сделайте накладывающиеся графики:
(i) без трения о воздух (задайте Cd = 0);
(ii) с трением о воздух.
Нарисуйте y(t) от x(t), и вы можете увидеть путь мяча, используя [x(t), y(t)] в odeplot вместо [t, y(t)].
Видно ли, что при учете трения о воздух траектория не является параболой?
Профессиональные игроки говорят, что легче выполнить hit home run в Денвере (в горах), чем на уровне моря. В чем смысл их утверждения?
Чтобы убедиться, что мяч летит значительно быстрее, выполните снова тот же расчет с учетом трения о воздух, но на высоте Денвера (атмосферное давление на 10 % ниже, чем на уровне моря).
Чтобы убедиться, что траектория – не парабола, задайте очень большую начальную скорость и увидите, что мяч падает почти вертикально. Объясните – почему?
Уравнение движения релятивистского гармонического осциллятора:
где p – релятивистский импульс; ; u – скорость частицы,
.
(a) Запишите это уравнение движения в виде двух связанных ДУ первого порядка. Первое – легкое, поскольку оно дано в первой строке этой задачи. Второе в виде .
Решите u относительно p, чтобы получить это второе уравнение.
(b) Используйте dsolve(...type=numeric), чтобы составить процедуру, которую вы сможете использовать в odeplot, чтобы сделать график x(t) для случаев x(0) = 0.2, 0.4, 1.0, 5.0, p(0) = 0. Проверьте графически, что причина того, что x(t) столь странно выглядит, в том, что подчиняется релятивистскому пределу скорости. В этом случае сделайте график скорости частицы u(t).
Вернитесь к задаче о бейсболе (задача 7.9). Если посмотреть на траекторию и при этом увеличить начальную скорость биты до ≈ 80 м/с, получится кривая, которая начинается как парабола, а в конце траектории спадает почти вертикально. Для объяснения происходящего примените качественный анализ к х- и у-компонентам закона Ньютона.
Рассмотрим снова задачу о связанном состоянии гармонического осциллятора (задача 7.10):
0
Посмотрите, как изменяется характер траектории системы от попадания в фиксированную точку до блуждания вокруг на так называемом странном аттракторе, изображенном пространственной кривой. Переход происходит, когда r принимает значения в окрестности 25, хотя, если разрешить системе действовать долго, аттрактор начинает появляться при меньших величинах r. Если хочется это получить, примените достаточно большие numpoints, а если программа долго не выдает результат и вы не будете уверены, что переход произошел, используйте numpoints = 200 и t2 = 20.
