Что такое дифференциальное уравнение и почему они ВЕЗДЕ
Дифференциальное уравнение — это не про то, чему равна величина, а про то, как быстро она меняется прямо сейчас.
Дифференциальное уравнение — это уравнение, связывающее неизвестную функцию с её производными, то есть со скоростью её изменения.
Большая часть школьной математики устроена статично. Нам дают уравнение вроде x*x - 5*x + 6 = 0 и спрашивают: чему равен x? Ответ — это число или несколько чисел. Мир дифференциальных уравнений устроен иначе. Здесь неизвестное — не число, а целая функция, например температура чашки кофе как функция времени T(t) или численность популяции N(t). И вместо того чтобы прямо сказать, чему эта функция равна, нам дают закон её изменения: как быстро она растёт или убывает в каждый момент. Именно эта смена точки зрения — от «чему равно» к «как меняется» — и делает дифференциальные уравнения таким мощным языком описания природы.
Производная — это скорость
Чтобы говорить о скорости изменения, нужен инструмент, и этот инструмент — производная. Если y(t) — это положение точки, то производная y'(t) — это её мгновенная скорость. Если y(t) — это количество вещества, то y'(t) — это скорость, с которой вещества становится больше или меньше. Производная отвечает на вопрос: насколько изменится величина, если сделать крошечный шажок по времени? Положительная производная означает рост, отрицательная — убывание, а нулевая — что в этот момент величина застыла.
Дифференциальное уравнение — это просто предложение на этом языке. Запись y' = f(t, y) читается так: скорость изменения величины y в момент t вычисляется по известной формуле f. Правая часть может зависеть от времени, от самого текущего значения y, или от обоих сразу. Мы знаем правило игры — закон скорости — и хотим узнать саму траекторию.
Примеры из четырёх наук
Удивительно, что один и тот же язык описывает совершенно разные явления. Пройдёмся по примерам.
Физика: движение и остывание
Самый старый пример — движение тела. Если на тело действует постоянное ускорение a, то скорость v подчиняется уравнению v' = a: скорость растёт равномерно. Если же мы хотим описать само положение x, придётся учесть, что x' = v, и тогда уравнение становится второго порядка — но к этому мы вернёмся позже. Ещё ближе к жизни — закон охлаждения Ньютона. Горячая чашка остывает тем быстрее, чем сильнее её температура отличается от температуры комнаты. На языке производных это T' = -k*(T - T_env), где T_env — температура окружения, а k > 0 — коэффициент. Чем больше разрыв T - T_env, тем больше по модулю скорость остывания, а минус говорит, что температура убывает. Заметьте, что закон не называет конкретную температуру в конкретный момент — он лишь связывает текущую температуру со скоростью её падения. Чтобы получить саму кривую остывания, придётся это уравнение проинтегрировать или решить численно.
Биология: рост популяции
Колония бактерий в питательной среде растёт тем быстрее, чем больше бактерий уже есть, ведь каждая делится. Скорость прироста пропорциональна текущей численности: N' = r*N. Это закон неограниченного роста. В реальности еда кончается, и приходится добавлять торможение — так появляется логистическая модель, но базовая интуиция та же: производная зависит от самого N.
Экономика: проценты
Вклад с непрерывным начислением процентов растёт по закону B' = p*B: чем больше денег на счету, тем больше процентов набегает за единицу времени. Математически это ровно то же уравнение, что и рост бактерий — природа и финансы говорят на одном языке.
Химия: скорость реакции
В реакции первого порядка вещество расходуется со скоростью, пропорциональной его концентрации: C' = -k*C. Чем больше осталось реагента, тем быстрее он исчезает. Снова та же структура, только со знаком минус. И снова обратите внимание на радикальную экономию мысли: вместо того чтобы для каждой задачи выдумывать новую формулу итогового ответа, мы записываем один короткий локальный закон — как меняется величина за бесконечно малый промежуток. Этот локальный закон обычно гораздо проще угадать из физики или химии явления, чем угадать сразу всю траекторию. В этом и состоит инженерная мощь дифференциальных уравнений: сложное глобальное поведение собирается из простого локального правила.
Как работает под капотом
Ключевая интуиция всего курса: зная скорость в каждой точке, можно восстановить траекторию. Представьте, что вы стоите в начальной точке и у вас есть прибор, который для любого места и времени показывает направление и скорость движения. Тогда вы можете двигаться маленькими шажками: посмотрели на скорость, сделали крошечный шаг в её направлении, оказались в новой точке, снова посмотрели на скорость — и так далее. Склеив все шажки, получим всю траекторию.
Именно так работает простейший численный метод. Возьмём закон охлаждения T' = -k*(T - T_env) с T_env = 20, начальной температурой 90, k = 0.1 и шагом по времени dt = 1. На каждом шаге новая температура равна старой плюс шаг, умноженный на текущую скорость.
T_env = 20.0
T = 90.0
k = 0.1
dt = 1.0
print('t=0 T=%.2f' % T)
for step in range(1, 6):
T = T + dt * (-k * (T - T_env))
print('t=%d T=%.2f' % (step, T))Вывод:
t=0 T=90.00 t=1 T=83.00 t=2 T=76.70 t=3 T=71.03 t=4 T=65.93 t=5 T=61.33
Видно, что чашка остывает: каждый шаг температура падает, но всё медленнее — потому что разрыв с комнатными 20 градусами сокращается, а вместе с ним сокращается и скорость остывания. Этот процесс «иди туда, куда указывает скорость» — сердце всех численных методов, которые мы изучим. Здесь это записано вручную, дальше мы оформим это в строгий метод Эйлера и его усовершенствования.
Частые ошибки
Новички часто путают саму величину и её скорость. В уравнении T' = -k*(T - T_env) неизвестное — это функция T(t), а не одно число; равенство описывает поведение скорости, а не финальный ответ. Вторая ошибка — думать, что отрицательная производная означает отрицательную величину. Производная и значение живут независимо: температура может быть высокой (95 градусов), а её производная — отрицательной, потому что чашка остывает. Третья ловушка — считать, что закон скорости сам по себе задаёт траекторию однозначно. Нет: одно и то же уравнение N' = r*N при разном стартовом числе бактерий даёт разные кривые. Нужна ещё начальная точка — к этому мы вернёмся в уроке про задачу Коши.
- Дифференциальное уравнение описывает скорость изменения, а не само значение величины.
- Производная
y'— это мгновенная скорость роста или убывания функции. - Один язык
y' = f(t, y)описывает физику, биологию, экономику и химию. - Зная скорость в каждой точке, траекторию можно восстановить шажками — это основа численных методов.
- Закон скорости плюс начальная точка вместе задают конкретную траекторию.