Учебное пособие: Методы коллокаций и Галеркина
Методы коллокаций и Галеркина
Метод коллокаций
Пусть необходимо определить функцию, удовлетворяющую линейному дифференциальному уравнению
(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 |