Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебное_пособие_Математические_методы_в_экологии_360.docx
Скачиваний:
2
Добавлен:
01.07.2025
Размер:
2.7 Mб
Скачать

6.7 Оду. Представление о конечных разностях

П о определению, производная функции одной переменной имеет вид

Компьютер не может совершить предельный переход (да и мы тоже, если функция задана таблично!).

Однако мы можем придать h малое (но не нулевое) значение и проверить, получается ли приближение достаточно точным (проблема точности) и не возрастает ли ошибка в ходе вычислений (проблема устойчивости).

Метод сводится к тому, что производная заменяется разностью.

Разность y(x + h)y(x) называется конечной разностью.

Пример для многочлена y(x) = 8x3 – 2x + 1 приведен в табл. 6.1.

Таблица 6.1 – Таблица разностей для многочлена y(x) = 8x3 – 2x + 1

Разности первого порядка:

Dy(0) = y(0,5)y(0), Dy(0,5) = y(1)y(0,5), Dy(1) = y(1,5)y(1) и т. д.

Если первые разности разделить на величину шага (здесь 0,5), получим грубую оценку производной (тангенса угла наклона касательной) в разных точках.

В общем случае, когда шаг равен h, правая разность первого порядка функции y(x) в точке = a имеет вид

Dy(a) = y(a + h)y(a).

В более привычной записи конечная разность функции y(x) в точке xi:

Dy(xi ) = y(xi+1 ) – y(xi ) = yi+1 – yi.

В исчислении разностей рассматриваются и разности второго порядка в точке xi:

D2y(xi ) = D (D y(xi )) = ( y(xi+2 ) – y(xi+1 ) )( y(xi+1 ) – y(xi ) ) =

= y(xi+2 ) – 2 y(xi+1 ) + y(xi ) = yi+2 – 2yi+1 + yi.

Т . о., приближенно можем записать

Более подробно метод сеток будет рассмотрен в следующей теме.

6.8 Оду. Краевые задачи – введение

До сих пор рассматривались задачи с начальными условиями. Часто бывают даны условия на решение в двух точках.

Иллюстрация приведена на рис. 6.7. Краевые условия имеют вид y(a) = A, y(b) = B.

Рис. 6.7. Геометрическая иллюстрация краевой задачи

Н апример, может быть дано уравнение

и требуется узнать у = у(х) для 0  x  1.

Эта ситуация может быть сведена к предыдущему случаю (т. е. к задаче с начальными условиями) методом проб и ошибок.

Н ачнем с уравнения

и попробуем найти два таких значения 1 и 2, чтобы выполнялись следующие соотношения:

Так как для большинства практических задач y(1) есть непрерывная функция , то можно, даже используя грубый метод деления отрезка пополам, за 10 проб уменьшить длину отрезка |1 – 2 | в 210, т. е. более чем в 1000 раз.

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

Рассмотрим уравнение

(6.32)

Прежде всего, аппроксимируем у" второй разностью

,

(6.33)

считая, что интервал 0 x 1 разделен на N интервалов величиной h = 1/N.

Таким образом,

(6.34a)

или

(6.34b)

Получили N – 1 линейных уравнений с N – 1 неизвестными, которые могут быть решены многими различными способами.

В качестве примера рассмотрим один частный случай уравнения (6.32). Положим A = B = 0, f(x) = 1, g(x) = x и N = 4, т. е. уравнение

Р ешение известно:

Разностные уравнения имеют вид (см. (6.34а))

или

Умножим первое из уравнений на 16, второе на 33 и третье на 16 и сложим. Получим

Зная y2, легко найти у1 и у3 из первого и третьего уравнений.

Что можно сделать для уточнения решения? Можно положить N = 8 и, используя вычисленное решение для N = 4, оценить решения для N = 8. Затем, подставляя это решение в правые части восьми уравнений, можно вычислить улучшенные значения и повторять процесс до тех пор, пока не прекратятся изменения.

Число точек можно увеличивать как угодно.

Постановка краевых задач

Пусть дано дифференциальное уравнение второго порядка:

(6.35)

Двухточечная краевая задача для уравнения (6.35) ставится следующим образом: найти функцию y = y(x), которая внутри отрезка [a,b] удовлетворяет уравнению (6.35), а на концах отрезка – краевымусловиям

(6.36)

Краевая задача называется линейной краевой задачей, если уравнение (6.35) и граничные условия (6.36) линейны. При этом дифференциальное уравнение и краевые условия записываются в виде

(6.37)

(6.38)

где p(x), q(x), f(x) – известные непрерывные на отрезке [a, b] функции, 0, 1, 0, 1 , A, B – заданные константы, причем

и

Если A = B = 0, краевые условия (6.38) называют однородными.

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

Метод конечных разностей для линейных дифференциальных уравнений второго порядка

Пусть x0 = a, xn = b, xi = x0 + ih (i = 1, 2, …, n – 1) – система равноотстоящих узлов с некоторым шагом h = (b – a)/n и

pi = p(xi), qi = q(xi), fi = f(xi).

Пусть yi, , – приближенные значения функции y(x) и ее производных , .

Можно приближенно заменить в каждом внутреннем узле производные , конечно-разностными отношениями

.

(6.39)

На концах отрезка примем

.

(6.40)

Теперь можно приближенно заменить уравнение (6.37) и краевые условия (6.38) системой (n+1) уравнений с (n+1) неизвестными:

(6.41)

Более точные формулы получаются при использовании центрально-разностных отношений:

.

(6.42)

Теперь вместо системы (6.41) получаем:

(6.43)

Пример решения уже был рассмотрен.

Оценка погрешности

(6.44)

где y(xi) – значение точного решения при x = xi, M4 = max|y(4)(x)| .

Метод редукции к задаче Коши двухточечной краевой задачи

Рассмотрим на отрезке [a, b] граничную задачу для дифференциального уравнения

(6.45)

с условиями

(6.46)

где p(x), q(x), f(x) – непрерывные на отрезке [a, b] функции.

Решение уравнения (6.45), удовлетворяющее краевым условиям (6.46), будем искать в виде

,

(6.47)

где u = u(x) – решение соответствующего однородного уравнения

(6.48)

а = (x) – частное решение неоднородного уравнения

(6.49)

Подставим (6.47) в первое условие граничной задачи (6.46), получим

.

(6.50)

Для того чтобы равенство (6.50) было справедливо при любом с, необходимо и достаточно, чтобы сомножитель = 0 и выполнялись следующие равенства:

.

(6.51)

Примем

,

(6.52)

где константа k отлична от нуля.

Если , то

(6.53)

если , то

(6.54)

Видно, что u = u(x) является решением задачи Коши для однородного уравнения (6.48), удовлетворяющим начальным условиям (6.52), а = (x) – решение задачи Коши для неоднородного уравнения (6.49), удовлетворяющее начальным условиям (6.53) или (6.54).

Теперь подставим (6.47) во второе условие граничной задачи (6.46) и выразим постоянную с

.

(6.55)

При этом предполагается, что . Если выполнено это условие, то краевая задача (6.45) - (6.46) имеет единственное решение, в противном случае она или совсем не имеет решений, или их бесчисленное множество.

Метод коллокации

Решение краевой задачи (6.45), (6.46) ищем в виде

(6.56)

где ui(x) (i = 0, 1, 2, …, n) – линейно независимые ортогональные функции.

Обозначим

(6.57)

Потребуем, чтобы невязка

(6.58)

обращалась в нуль на некоторой системе точек x1, x2, …, xn отрезка [a, b].

Эти точки называются точками коллокации, их число должно равняться числу коэффициентов ci в выражении (6.56).

Для определения ci получаем систему уравнений

(6.59)

Метод коллокации можно применить и для решения нелинейных уравнений c линейными краевыми условиями.

При этом невязка имеет вид

Система (6.59) будет системой нелинейных алгебраических уравнений относительно неизвестных ci.

Пример

Методом коллокации найти приближенное решение уравнения

c краевыми условиями

y(–1) = y(1) = 0.

Выберем в качестве базисных функций u0(x) = 0, u1(x) = 1 – x2, u2(x) = x2(1– x2).

Краевые условия для них выполняются. Решение будем искать в виде

За точки коллокации возьмем x0 = 0, x1 = ½.

Составляем невязку R(x):

Подставив x0 = 0, x1 = ½, получаем систему

Отсюда находим c1 = 0,957; c2 = – 0,022.

Приближенное решение имеет вид

Тема 7

Метод конечных разностей (метод сеток) численного решения дифференциальных уравнений

Метод сеток, или метод конечных разностей – один из самых распространенных методов численного решения уравнений с частными производными.

В основе – идея замены производных конечно-разностными отношениями.

Ограничимся случаем двух независимых переменных.

Пусть в плоскости xOy имеется некоторая область G с границей Г (рис. 7.1).

Рис. 7.1. Построение сетки

Построим два семейства параллельных прямых:

Точки пересечения прямых называют узлами.

Два узла называют соседними, если они удалены вдоль оси Ox или Oy на шаг сетки h или k соответственно.

Узлы, принадлежащие G + Г и расположенные вне этой области на расстоянии, меньшем, чем шаг от Г, называют внутренними.

Оставшиеся из выделенных – граничные.

Рассмотрим сначала разности в направлении x.

Разложим функцию u = u(x, y0) в ряд Тейлора в окрестности точки x0, y0:

где  лежит между x и x0.

Если положить x = x0 + h, то можно получить следующее выражение

Т. е. если представить ux с помощью

(7.1)

то ошибка ограничения будет равна

Равенство (7.1) получено с помощью подстановки x = x0 + h, результат называется правой разностью.

Аналогично можно получить левую разность:

(7.2)

Приближение для второй производной uxx через правую разность:

(7.3)

Если в выражение (7.3) подставить правые разности для ux, весь результат окажется «сдвинут» вправо. Для компенсации используем левые разности для ux. Получим

(7.4)

Можно отметить симметрию полученной формулы относительно x0, y0.

Для определения ошибки ограничения вспомним, что

Положим теперь x = x0 + h; x = x0 – h и сложим два равенства. Получится, что ошибка ограничения равна

Аналогичный анализ проводится для производных в направлении y:

(7.5)

Здесь k – величина шага по y.

Ошибка ограничения равна

С использованием полученных выражений можно полностью переписать дифференциальное уравнение в частных производных и перейти к уравнению в конечных разностях.

Например, уравнение Лапласа

можно переписать в виде

Тема 8

Решение дифференциальных уравнений в частных производных