![]() |
Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | |
|
Задачу определения минимума функционала методом сопряженных градиентов можно рассматривать как задачу о решении системы линейных алгебраических уравнений. Рассмотрим общий случай.
Пусть – нормальная n -мерная система линейных алгебраических уравнений, где А – симметричная и положительно определенная матрица.
Образуем квадратичный функционал вида:
Ф(X) = (AX,X)-2(B,X)+C, (18)
где CÎR1 - const;
(*,*) – скалярное произведение в пространстве Rn.
Задача решения нормальной системы и задача минимизации функционала (18) эквивалентны.
Пусть X* - точное решение системы , тогда:
Ф(X*) = Ф(X). (19)
Рассмотрим метод сопряженных градиентов. Введем следующие обозначения:
X(0), …, X(k) – приближения к точному решению X*;
r(0), …, r(k) – невязки на каждом шаге, играющие роль антиградиента функции Ф(X);
p(k) – направление минимизации функционала Ф(X) в точке X(k);
ak – коэффициент, обеспечивающий минимум Ф(X) в направлении p(k);
bk – коэффициент при p(k) в формуле для вычисления p(k+1),
обеспечивающий А – сопряженность векторов p(k) и p(k+1) (т. е. p(k) ортогональны всем предыдущим невязкам r(k-1));
q(k) – вспомогательный вектор.
Алгоритм метода сопряженных градиентов
Шаг 1.
Задаём X(0) – начальное приближение;
e>0 – погрешность решения;
r(0)=B-AX(0) – невязка на начальном приближении;
p(0)= r(0) – направление минимизации на нулевом шаге.
Шаг 2.
Вычисляем вектор q(k)=Ap(k), k – номер итерации;
вычисляем пошаговый множитель ;
вычисляем следующее приближение X(k+1)=X(k)+akp(k);
вычисляем невязку на шаге (k+1): r(k+1)=r(k)+akq(k).
Шаг 3.
Если || r(k+1) ||£ e, то итерационный процесс останавливается и выводится решение X(k+1);
иначе
вычисляем скаляр ;
вычисляем новое направление минимизации вектор
p(k+1)=r(k+1)-bkp(k);
полагаем k = k + 1, переходим к Шагу 2.
Дата публикования: 2015-03-29; Прочитано: 149 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!