Нахождение начальной скорости, которая заставляет маятник

Совершать полные вращения

Предположим, что мы хотим с точностью до 0.001 найти наименьшее значение начальной скорости, которая требуется, чтобы заставить маятник, начинающий движение из своего исходного положения, выполнить полное вращение один раз. Будет полезно показать решения, которые соответствуют нескольким различным начальным скоростям на одном графике.

Сначала мы рассмотрим целые значения скорости в промежутке от 5 до 10.

>> hold on

>> for а = 5:10

[t, xa] = ode45(g, [0:0.01:20], [0 а]);

plot(xa(:, 1), xa(:, 2))

end

>> hold off

Нахождение начальной скорости, которая заставляет маятник - student2.ru

Рис. 4.

Начальные скорости 5, 6 и 7 не являются достаточно большими (рис. 4), чтобы увеличить угол более π, но начальные скорости 8, 9 и 10 достаточны, чтобы заставить маятник совершать полный оборот. Посмотрим, что происходит на промежутке между 7 и 8.

Второй шаг

>> hold on

>> for а = 7.0:0.2:8.0

[t, ха] = ode45(g, [0:0.01:20], [0 а]);

plot(xa(:, 1), xa(:, 2))

end

>> hold off

Нахождение начальной скорости, которая заставляет маятник - student2.ru

Рис. 5.

Можно заметить (рис. 6), что ответ находится где-то между 7.2 и 7.4. Давайте выполним еще одно уточнение.

Третий шаг

>> hold on

>> for а = 7.2:0.05:7.4

[t, ха] = ode45(g, [0:0.01:20], [0 а]);

plot(xa(:, 1), ха(:, 2))

end

» hold off

Нахождение начальной скорости, которая заставляет маятник - student2.ru

Рис. 6.

Следует сделать вывод, что наименьшая необходимая скорость с точностью 0,01 находится где-то между 7.25 и 7.3 (рис. 7 и 8).

Четвертый шаг

for a = 7.25:0.01:7.3

[t, xa] = ode45(g, [0:0.01:20], [0 a]);

plot(xa(:, 1), xa(:, 2))

end

Нахождение начальной скорости, которая заставляет маятник - student2.ru

Рис. 7.

Для более точного анализа увеличим область графика, где происходит смена режима колебания.

Нахождение начальной скорости, которая заставляет маятник - student2.ru

Рис. 8.

Видно, что наименьшая необходимая скорость находится где-то между 7.29 и 7.3.

Следует продолжить нахождение более точного значения скорости смены режима колебания.

Динамика осциллятора Ван дер Поля при w2 = 2 и c = 1

Предельный цикл – устойчивый режим периодических колебаний в нелинейных системах после завершения переходных процессов

Нахождение начальной скорости, которая заставляет маятник - student2.ru

Нахождение начальной скорости, которая заставляет маятник - student2.ru

Файл-функция, для этих параметров, имеет следующий вид (см. Андреев 2013, с. 117):

function dydt = vdp1(t,y)

dydt = zeros(2,1); dydt(1) = y(2);

dydt(2) = 1*(1-y(1).^2).*y(2)-2*y(1);

При начальном положении на предельном цикле (х0 = 2, v0= 0) вызов файл-функции имеет следующий вид:

[t,y] = ode23(@vdp1,[0 25],[2;0]);

Следующий оператор дает возможность получить зависимость х и v от времени

plot(t,y(:,1),t,y(:,2)), grid on

Результат показан на рис. 1.

Нахождение начальной скорости, которая заставляет маятник - student2.ru

Рис. 1.

Следующий оператор дает возможность получить фазовый портрет системы (рис. 2):

plot(y(:,1),y(:,2)), grid on

Нахождение начальной скорости, которая заставляет маятник - student2.ru

Рис. 2.

Если взять начальные данные вне цикла (х0 = -0.5, v0= 5) вызов файл-функции имеет следующий вид:

[t,y] = ode23(@vdp1,[0 25],[-0.5;5]);

Результат показан на рис. 3.

Нахождение начальной скорости, которая заставляет маятник - student2.ru

Рис. 3.

Фазовый портрет показан на рис. 4.

Нахождение начальной скорости, которая заставляет маятник - student2.ru

Рис. 4.

Если взять начальные данные внутри цикла (х0 = -0.05, v0= -0.05) вызов файл-функции имеет следующий вид:

[t,y] = ode23(@vdp1,[0 50],[-0.05; -0.05]);

Результат показан на рис. 5.

Нахождение начальной скорости, которая заставляет маятник - student2.ru

Рис. 5.

Фазовый портрет показан на рис. 6.

Нахождение начальной скорости, которая заставляет маятник - student2.ru

Рис. 6.

Наши рекомендации