[Trenogin_V.A.]_Obueknovennuee_differencialnuee_ur(BookZZ.org)
.pdf
292 Доп. III. Решение задач с использованием системы Mathematica
§ 7. Уравнение Эйри
П р и м е р. Рассмотрим следующую |
задачу Коши для ДУ Эйри |
(см. гл. V). |
|
Дано уравнение y + xy, y(0) = 1, |
y (0) = 0. Построить решение |
ввиде степенного ряда.
Ре ш е н и е. Решение можно найти в явном виде:
sol = DSolve[{y”[x] + xy[x] == 0, y[0] == 1, y’[0] == 0}, y[x], x] {{y[x] → 12 (32/3AiryAi[(-1)1/3x]Gamma[ 12 ]+
31/6 AiryBi[(-1)1/3x] Gamma[ 12 ])}}
Построим график (рис. 94):
gr1 = Plot[{y[x] /. sol }, {x, 0, 20}]; |
||||
1 |
|
|
|
|
0.75 |
|
|
|
|
0.5 |
|
|
|
|
0.25 |
|
|
|
|
0 |
|
|
|
|
-0.25 |
|
|
|
|
-0.5 |
|
|
|
|
-0.75 |
|
|
|
|
-1 |
-0.5 |
0 |
0.5 |
1 |
Рис. 94
Найдем решение в виде степенного ряда:
∞
y[x_] := an xn
n=0
Подставим ряд в уравнение, получим тождество:
y”[x] + xy[x]==0
∞∞
(-1+n)nx−2+nan + x xn an==0
n=0 |
n=0 |
Объединяем две суммы в одну, получим
∞
2a2 + ((-1+n)n an + an-3)xn-2==0
n=2
Отсюда 2a2 = 0, (−1 + n)nan + an−3, и получаем рекуррентную формулу an = −an−3/(n(n − 1)).
§ 8. Задача о релаксационных колебаниях |
293 |
Запишем эти соотношения для коэффициентов и многочлена степени 100 в виде операторов:
a0=1; a1=0; a24=0;
Do[an =- an-3/(n(n-1)),{n,3,100}];
100
y1= xn an
n=0
Выведем первые 10 членов многочлена:
Take[y1,10]
|
x3 |
|
|
x6 |
x9 |
x12 |
x15 |
x18 |
||||
1- |
|
+ |
|
|
- |
|
+ |
|
- |
|
+ |
109930867200 - |
6 |
180 |
12960 |
1710720 |
359251200 |
||||||||
|
|
|
x21 |
|
|
x24 |
|
|
x27 |
|||
46170964224000 + 25486372251648000 - 17891433320656896000
Построим график (рис. 95):
gr2 = Plot[{y1}, {x, 0, 10}]
1
0.75
0.5
0.25
2 |
4 |
6 |
8 |
10 |
-0.25 -0.5
Рис. 95
Как видим из рисунков, графики совпадают. Решение в виде степенного ряда можно построить практически любой длины.
§ 8. Задача о релаксационных колебаниях
Пример 1. Построить график решения уравнения, описывающего релаксационные колебания,
x + x − α(1 − x2)x = 0.
Р е ш е н и е. Напишем уравнение и его численное решение для различных значений параметра α (α = 10 на рис. 96, α = 100 на рис. 97):
sol[α_] := NDSolve[{x”[t] + x[t] - α(1 - x[t]2)x’[t] == 0, x’[0] == 1, x[0] == 0}, x[t],{t,0,α *10}, MaxStep → ∞];
Plot[Evaluate[x[t] /. sol[10], {t, 0, 200}], AxesLabel → {"t "X"}] Plot[Evaluate[x[t] /. sol[100], {t, 0, 200}], AxesLabel → {"t "X"}]
294 Доп. III. Решение задач с использованием системы Mathematica |
|||
X |
|
|
|
2 |
|
|
|
1 |
|
|
|
50 |
100 |
150 |
200 t |
-1 |
|
|
|
-2 |
|
|
|
|
Рис. 96 |
|
|
X |
|
|
|
2 |
|
|
|
1 |
|
|
|
50 |
100 |
150 |
200 t |
-1 |
|
|
|
-2 |
|
|
|
|
Рис. 97 |
|
|
Пример 2. Для уравнения из примера 1 при малых α (α = 0,01 на |
|||
рис. 98) колебания близки к гармоническим (аналитическим методом |
|||
Линштедта–Пуанкаре эти случаи изучены в Дополнении I): |
|||
sol = NDSolve[{x”[t] + x[t] - 0.01(1-x[t]2) x’[t]==0, x’[0]==1, x[0]==0}, |
|||
x[t],{t,0,20, MaxStep → ∞]; |
|
|
|
Plot[Evaluate[x[t] /. sol, {t, 0, 20}], AxesLabel → {"t "X"}] |
|||
X |
|
|
|
1 |
|
|
|
0.5 |
|
|
|
5 |
10 |
15 |
20 t |
-0.5 |
|
|
|
-1 |
|
|
|
|
Рис. 98 |
|
|
296 Доп. III. Решение задач с использованием системы Mathematica
|
|
2 |
|
|
|
1 |
|
-2 |
-1 |
1 |
2 |
|
|
-1 |
|
|
|
-2 |
|
Рис. 100 |
|
Рис. 101 |
|
Пример 17. Неустойчивый предельный цикл.
Упражнение. Пользуясь системой Mathematica, построить фазовый портрет автономной системы, показать, что она имеет неустойчи-
вый предельный цикл, и построить соответствующие графики:
x˙ y˙
Р е ш е н и е. Запишем правую часть системы: eqx[x_, y_] := -y - x(1-x2-y2) eqx[x_, y_] := x - y(1-x2-y2)
§10. Нахождение положений равновесия ДС
Пр и м е р. Найти положения равновесия ДС (стационарные решения системы ДУ)
x˙ = x(x2 + y2 − 1)(x2 + y2 − 4) − y, y˙ = (y(x2 + y2) + x3 )(x2 + y2 − 4) + x.
Напомним, что положения равновесия ДС (автономной системы) x = f(x, y),
y = g(x, y)
определяются как решение системы алгебраических уравнений: f(x,y) = 0,
g(x,y) = 0.
Сформируем систему алгебраических уравнений:
eq={x(x2+y2-1)(x2+y2-4)-y==0, (y(x2+y2)+ x3 ) (x2+y2-4)+x==0}
§ 11. Система Лотки–Вольтерры с насыщением |
297 |
решаем эту систему:
res = N[Solve[eq, x,y]]
{{y → 0., x → -1.}, {y → 0., x → 0.}, {y → 0., x → 1.}, {y → 0.907448 - 3.28081i, x → -3.82322 - 0.816339i}, {y → -0.907448 + 3.28081i, x → 3.82322 + 0.816339i}, {y → 0.907448 + 3.28081i, x → -3.82322 + 0.816339i}, {y → -0.907448 - 3.28081i, x → 3.82322 - 0.816339i}, {y → 0.+0.139514i, x → 0. + 0.0339987i},
{y → 0.-0.139514i, x → 0. - 0.0339987i}},
и выберем действительные решения.
Select[res, Head[#[[2]][[2]]] == Real &]
{{y → 0., x → -1.}, {y → 0., x → 0.}, {y → 0., x → 1.}}
Таким образом, находим три положения равновесия (0, 0), (0, −1), (0, 1).
§11. Система Лотки–Вольтерры с насыщением
Пр и м е р. Исследовать ДС
|
|
|
− |
xy |
|||
|
|
x = 2x |
|
|
xy |
, |
|
|
|
|
1 |
+ sx |
|||
|
y = −y + |
|
, |
||||
|
1 + sx |
||||||
где s > 0 — параметр, |
характеризующий насыщение хищников. |
||||||
|
|
|
|
|
|
|
|
Р е ш е н и е. Найдем положения равновесия ДС. Для этого составим уравнения из правых частей и решим их:
eq1 = 2x - x y/(1 + s x); eq2 = x y/(1 + s x) - y;
sol = Solve[{eq1 == 0, eq2 == 0}, {x, y}] // Flatten
{x → 0, y → 0, y → −-12+s , x → −-11+s }
Выберем ненулевое решение:
sol= Take[sol,-2]
{y → −-12+s , x → −-11+s }
1 2
Итак, −−1 + s , −−1 + s — положение равновесия.
Далее задаем и реализуем в системе Mathematica следующий порядок действий.
§ 11. Система Лотки–Вольтерры с насыщением |
299 |
|||||
3.5 |
|
|
|
|
|
|
3 |
|
|
|
|
|
|
2.5 |
|
|
|
|
|
|
2 |
|
|
|
|
|
|
1.5 |
|
|
|
|
|
|
1 |
|
|
|
|
|
|
0.5 |
|
|
|
|
|
|
20 |
40 |
60 |
|
80 |
100 |
|
Рис. 102. x(t) (пунктир), y(t) при s = 0 |
|
|
||||
4 |
|
|
|
|
|
|
3 |
|
|
|
|
|
|
2 |
|
|
|
|
|
|
1 |
|
|
|
|
|
|
0.5 |
1 |
1.5 |
2 |
2.5 |
|
|
Рис. 103. Фазовые траектории при s = 0 |
|
|
||||
7 |
|
|
|
|
6 |
|
|
|
|
5 |
|
|
|
|
4 |
|
|
|
|
3 |
|
|
|
|
2 |
|
|
|
|
1 |
|
|
|
|
20 |
40 |
60 |
80 |
100 |
Рис. 104. x(t) (пунктир), y(t) при s = 0,01 |
||||
Случай s = 0 соответствует классической системе Лотки–Вольтерры без насыщения (см. Доп. I). Эта система консервативна, и ей соответствует семейство замкнутых траекторий, окружающих положение равновесиия (см. Доп. I, §3). В §6 замкнутые траектории вычислены аналогичным методом Линдштедта–Пуанкаре.
300 Доп. III. Решение задач с использованием системы Mathematica
При s > 0 имеем более адекватную действительности диссипативную систему Лотки–Вольтерры с насыщением. Здесь имеется устойчивый предельный цикл (см. Доп. I, §12).
На рис. 105 показана одна траектория, наматывающаяся на предельный цикл снаружи.
4 |
|
|
|
|
|
3 |
|
|
|
|
|
2 |
|
|
|
|
|
1 |
|
|
|
|
|
0.5 |
1 |
1.5 |
2 |
2.5 |
3 |
Рис. 105. Фазовые траектории при s = 0,01 |
|||||
§12. Брюсселятор
Пр и м е р. Исследуем ДС, предложенную брюссельской научной школой, как первое приближение к ДС Власова–Жаботинского (см. Доп. I, §12)
x = a − (b + 1)x + x2y,
y = bx − x2y, a > 0, b > 0, x > 0, y > 0.
Р е ш е н и е. Найдем сначала положения равновесия ДС. Для этого составим уравнения из правых частей и решим их:
eq1 = a-(b+1)x +x2y; eq2 = bx-x2y;
sol = Solve[{eq1 == 0, eq2 == 0}, {x, y}] // Flatten {y → ba , x → a}
Итак, ab , a — особая точка.
Далее переносим начало координат в эту точку:
Expand[eq1 /. {x → x + x0, y → y + y0}]
Expand[eq2 /. {x → x + x0, y → y + y0}]

1
-1 
