Прикладные дифференциальные уравнения

Домашнее задание №6

Илья Щуров

Факультет компьютерных наук, Прикладная математики и информатика, 2021-22 учебный год

Страница курса

Зависимость решений от начального условия и параметров

В этом задании мы будем рассматривать уравнение

$$ \tag{1} \dot x = x(a\sin(t) + b - x)$$

Оно соответствует логистическому росту населения (с ограниченными ресурсами) с учётом сезонности: количество еды меняется периодически, летом её больше, зимой — меньше. Будем считать $a$ и $b$ фиксированными неотрицательными параметрами. При $a=0$ и $b=1$ получается логистическая модель, которую мы рассматривали ранее.

Задача 1

Пусть $a=1$ и $b=1$. Пусть $\varphi(t; x_0)$ — решение уравнения с начальным условием $x(0)=x_0$, то есть $\varphi(0; x_0)=x_0$ для всех $x_0$. Обозначим через $y(t)$ производную решения $\varphi$ по начальному условию в точке $x_0=0$: $$y(t):=\left.\frac{\partial \varphi(t; x_0)}{\partial x_0}\right|_{x_0=0}.$$

  1. Найдите аналитически решение $\varphi(t; 0)$ уравнения (1) с начальным условием $x(0)=0$.
  2. Запишите дифференциальное уравнение на $y(t)$ (уравнение в вариациях).
  3. Должно получиться уравнение с разделяющимися переменными. Найдите аналитически его решение (с правильным начальным условием).
  4. Напишите функцию, которая находит приближенное значение $\hat y(t)$ с помощью численного решения уравнения (1). А именно, для фиксированного $t$ нужно взять маленькое значение $x_0$, численно (например, с помощью np.odeint) найти решение $\hat \varphi(t; x_0)$ уравнения (1) с начальным условием $x(0)=x_0$ и вычислить $$\hat y(t) := \frac{\hat \varphi(t; x_0) - \varphi(t; 0)}{x_0-0}.$$
  5. Постройте на одной картинке графики $y(t)$, найденного аналитически, и $\hat y(t)$, найденного численно, на отрезке $[0, T]$ для какого-нибудь $T$ (например, $T=1$). Что происходит, когда $x_0$ становится больше или меньше? Что происходит, если увеличивать $T$? Почему так происходит?
  6. Исходя из анализа уравнения в вариациях, какие выводы можно сделать о поведении решений вблизи решения $\varphi(t; 0)$? С течением времени они будут удаляться от решения $\varphi(t; 0)$ или приближаться к нему?

Задача 2

Пусть $b=1$. Рассмотрим решение системы (1) с начальным условием $x(0)=1$. При разных значениях $a$ мы получаем разные системы и значит разные решения, поэтому решение будет зависеть от $a$. Обозначим его через $\varphi(t; a)$. Обозначим через $y(t)$ производную решения $\varphi$ по параметру $a$ в точке $a=0$: $$y(t):=\left.\frac{\partial \varphi(t; a)}{\partial a}\right|_{a=0}.$$

  1. Найдите аналитически решение $\varphi(t; 0)$ уравнения (1) при $a=0$.
  2. Запишите дифференциальное уравнение на $y(t)$ (уравнение в вариациях).
  3. Должно получиться линейное неоднородное уравнение. Найдите аналитически его решение (с правильным начальным условием). Его можно решить с помощью метода вариации постоянной.
  4. Возьмём $t=10\pi$. В какую сторону будет сдвинуто решение $\varphi(t; a)$ при маленьких $a>0$ относительно решения $\varphi(t; 0)$? Иными словами, что вы можете сказать про знак разности $\varphi(t; a) - \varphi(t; 0)$ при маленьких положительных $a$? Ответ обосновать без использования численного решения дифференциальных уравнений.
  5. Напишите функцию, которая находит приближенное значение $\hat y(t)$ с помощью численного решения уравнения (1). А именно, для фиксированного $t$ нужно взять маленькое значение $a$, численно найти решение $\hat \varphi(t; a)$ уравнения (1) с начальным условием $x(0)=1$ и вычислить $$\hat y(t) := \frac{\hat \varphi(t; a) - \varphi(t; 0)}{a-0}.$$
  6. Постройте на одной картинке графики $y(t)$, найденного аналитически, и $\hat y(t)$, найденного численно, на отрезке $[0, T]$ для какого-нибудь $T$ (например, $T=10$). Что происходит, когда $a$ становится больше или меньше?
  7. Напишите функцию, которая для данного значения $a$ строит интегральные кривые системы (1) с начальными условиями $x(0)=x_0$, $x_0 \in \texttt{np.linspace(0, 3, 31)}$. Постройте анимацию, которая показывает, как эта картинка меняется при изменении $a$ от 0 до 2. Как вы можете описать поведение решений при различных значениях $a$ при $t \to +\infty$? Как вы можете описать зависимость этого поведения при изменении $a$?
In [ ]: