Учебное пособие: Методы коллокаций и Галеркина
Методы коллокаций и Галеркина
Метод коллокаций
Пусть необходимо
определить функцию
,
удовлетворяющую линейному дифференциальному уравнению
(2.50)
и линейными краевыми условиями
,
(2.51)
причем ![]()
Выберем некоторую совокупность линейно независимых функций
(2.52)
которую назовем системой базисных функций.
Пусть функция
удовлетворяет
неоднородным краевым условиям
(2.53)
а остальные функции удовлетворяют соответствующим однородным краевым условиям:
.
(2.54)
Если краевые условия
(2.51) однородны (A=B=0),
то можно положить
и
рассматривать лишь систему функций
.
Будем искать приближенное решение краевой задачи (2.50), (2.51) в виде линейной комбинации базисных функций
.
(2.55)
Тогда функция y удовлетворяет краевым условиям (2.51). В самом деле, в силу линейности краевых условий имеем

и аналогично ![]()
Составим функцию
. Подставляя
сюда вместо y
выражение
(2.55), будем иметь
.(2.56)
Если при некотором выборе коэффициентов ci выполнено равенство
при
![]()
то функция y
является
точным решением краевой задачи (2.50), (2.51). Однако подобрать так удачно
функции
и
коэффициенты ci
в
общем случае не удается. Поэтому ограничиваются тем, что требуют, чтобы
функция
обращалась
в нуль в заданной системе точек
из
интервала [a, b],
которые называются точками коллокации. Сама функция R
называетсяневязкой уравнения
(2.50). Очевидно, что в точках коллокации дифференциальное
уравнение (2.50) будет удовлетворено точно, и невязка в этих точках равна
нулю.
Итак, метод коллокации приводит к системе линейных уравнений
.
(2.57)
Из системы (2.57) в
случае ее совместности можно определить коэффициенты
,
после чего приближенное решение краевой задачи дается формулой (2.55).
Пример. Методом коллокации и методом сеток решить краевую задачу
(2.58)
1. Метод коллокаций.
В качестве базисных функций выберем полиномы
.
Эти полиномы
удовлетворяют краевым условиям:
За
точки коллокации возьмем следующие абсциссы:

Ограничиваясь двумя базисными функциями, положим
![]()
Найдем функцию ![]()
(2.59)
В точках
коллокации
получим
.
Подставляя сюда (2.59), найдем
(2.60)
Решив эту систему,
определим коэффициенты
:
=0.957,
=−
0.022.
Следовательно, приближенное решение будет иметь вид
.
Например, при x=0 получим y(0)=0.957.
2. Метод сеток.
Для грубого решения выбираем шаг h=1/2 (см. рис. 2).
|
|
|
|
Рис. 2. Иллюстрация к методу сеток
Полагая
,
ввиду симметрии уравнения и краевых условий, будем иметь:
(2.61)
Таким образом, нужно
определить лишь две ординаты y0 и
. Полагая
x=0
и пользуясь симметричными формулами для производных
,
получим:

Аналогично, при x=1/2, то есть при i=1, получаем

Учитывая теперь (2.61), найдем систему

Решая эту систему, отыщем y0=0.967, y1=0.721. Итак, сравним: метод коллокации дает y0=0.957, а метод сеток y0=0.967.
Пусть дано дифференциальное уравнение с линейными краевыми условиями
,
(2.62)
(2.63)
Будем искать приближенное решение этой краевой задачи в виде суммы
(2.64)
где
–
некоторая непрерывная функция, удовлетворяющая неоднородным краевым
условиям (2.63), а
–
какая-то система линейно независимых функций, удовлетворяющих однородным
краевым условиям
(2.65)
и, кроме того
функции
при
образуют
в классе функций c2[a, b],
удовлетворяющих условиям (2.65), полную систему.
Заметим, что свойство полноты понимается следующим образом.
Обозначим через G
класс
функций y(x),
принадлежащих c2[a, b] (то
есть дважды непрерывно дифференцируемых на [a, b])
и удовлетворяющих граничным условиям (2.65). Говорят, что система функций
полна
в классе G,
если для любого
и
любой функции
можно
указать такое n
и
такие параметры
, что
имеет место неравенство
![]()
где 
Это означает, что для
любой допустимой функции
найдется
такая функция
,
которая на [a, b] будет
сколь угодно точно приближать функцию y(x)
вместе с ее производными
и
.
Докажем, что если для
некоторой функции F(x) и
полной системы функций
выполняется
соотношение ортогональности
(2.66)
то функция
. Для
этого из полной системы
последовательной
ортогонализацией построим полную ортогональную систему ![]()

причем
иначе
были
бы линейно зависимы. Разлагая по новой системе функцию F(x),
найдем

Подставляя это разложение в соотношение ортогональности (2.66), придем к равенству
(2.67)
Вычислим последний интеграл:


так
как 
Таким образом, уравнение (2.67) принимает вид
.
Полагая здесь k=1,
получим
, и
так как
,
то
.
Полагая k=2,
получим
, и
так далее. Следовательно, все коэффициенты
в
разложении функции F(x) равны
нулю и поэтому F(x)
тождественно равна нулю,
что и требовалось доказать.
Возвращаясь теперь к
задаче (2.62), (2.63), видим, что если бы мы нашли такую функцию y(x),
удовлетворяющую условиям (2.63), и чтобы
было
ортогонально
при
любых
, то
это означало бы, что
, и
задача (2.62), (2.63) была бы решена. Если же ортогональность есть
только при
, то в
разложении
по
системе
входят
и
более старшие коэффициенты, то есть ![]()
Метод Галеркина состоит
в том, что решение задачи (2.62), (2.63) ищется в виде (2.64), причем требуют
ортогональности
к
функциям полной системы
для
, то
есть
(2.68)
где

Это дает алгебраическую систему уравнений для определения коэффициентов ak. Найдя из нее коэффициенты, получим приближенное решение.
Если оператор
нелинейный,
то система (2.68) тоже будет нелинейной и решение ее весьма затруднительно.
Если же оператор
линейный,
то система (2.68) также будет линейной и можно решать задачу с большим числом
коэффициентов.
В методе Галеркина
функция
должна
удовлетворять краевым условиям (2.63). Поэтому
можно
выбрать в виде
,
и коэффициенты
найти
как решение системы уравнений

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

В этой системе из двух
уравнений три неизвестных:
и
. Одну
из них можно выбрать произвольно, положив, например,
.
Аналогично отыскивают коэффициенты
для
.
Для простых условий
вида
то
есть
функции
можно
вычислять по правилу
![]()
или
![]()
Отметим, что при
нелинейном краевом условии вида, например,
линейная
комбинация (2.64) с произвольными коэффициентами ak уже
не будет удовлетворять этому краевому условию. Поэтому метод Галеркина применим
только к задачам с линейными краевыми условиями, хотя допустим и нелинейный оператор L.
Пример 1. Методом Галеркина найти приближенное решение уравнения
![]()
с условиями
![]()
В качестве системы
базисных функций
выберем

Ограничимся четырьмя
функциями
, то
есть k=0,
1, 2, 3. Решение будем искать в виде
![]()
Найдем функцию
.
Так как
,
а
,
,
то получим

Потребует теперь
ортогональности функции F(x)
к
функциям
. Это
приводит к системе

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

Решение этой системы:
![]()
Следовательно,
![]()
Пример 2.
Решим задачу

Положим
и
выберем полную систему функций

Ограничиваясь k=1, легко получить

Если же взять два
члена, то получим ![]()
Можно рассчитать следующую таблицу:
|
x |
|
|
Точное
решение |
|
|
0.241 | 0.445 | 0.208 |
|
|
0.322 | 0.685 | 0.325 |
|
|
0.241 | 0.582 | 0.273 |
