Встроенные функции для решения уравнений в частных производных. Параболические и гиперболические уравнения.
Как видно из рис. 13.14, на котором изображены результаты расчетов по листингу 13.4, встроенная функция с успехом справляется с уравнением диффузии, отыскивая уже хорошо знакомое нам решение. Заметим, что использование встроенной функции Pdesolve связано с довольно громоздкими вычислениями, которые могут отнимать существенное время.
Рис. 13.14. Решение уравнения диффузии тепла при помощи встроенной функции Pdesolve (листинг 13.4)
Как Вы можете заметить, выбирать величину шага по пространственной и временной переменным может как сам алгоритм, так и пользователь (неявным образом, через число узлов сетки). Читателю предлагается повторить вычисления листинга 13.4 для различных комбинаций параметров (главным образом, числа узлов сетки), чтобы проверить, в каких случаях алгоритм встроенной функции справляется с задачей, выдавая верное решение, а в каких дает сбой.
Приведем еще один пример применения функции Pdesolve для решения уравнений в частных производных. Рассмотрим одномерное волновое уравнение, которое описывает, например, свободные колебания струны музыкального инструмента.
Здесь неизвестная функция u(x,t) описывает динамику смещения профиля струны относительно невозмущенного (прямолинейного) положения, а параметр с характеризует материал, из которого изготовлена струна.
Как Вы видите, уравнение (11) содержит производные второго порядка как по пространственной координате, так и по времени. Для того чтобы можно было использовать встроенную функцию pdesoive, необходимо переписать волновое уравнение в виде системы двух уравнений в частных производных, введя вторую неизвестную функцию v=ut.
Листинг 13.5. Решение волнового уравнения:
Программа для решения волнового уравнения приведена в листинге 13.5, а результат – на рис. 13.15.
Рис. 13.15. Решение волнового уравнения (листинг 13.5)