- •§ 3. Методы решения систем линейных и нелинейных уравнений
- •§ 3. Методы решения систем линейных и нелинейных уравнений
- •3.1. Метод исключения гаусса для систем линейных уравнений
- •3.2. Метод главных элементов
- •3.3. Решение систем нелинейных уравнений методом ньютона
- •3.4. Решение систем линейных уравнений методом квадратного корня
- •3.5. Решение систем линейных уравнений методом итераций
- •3.6. Решение систем линейных уравнений методом зейделя
- •§ 4. Алгебра матриц
- •4.1. Вычисление собственных векторов и собственных значений матриц по методу крылова
§ 3. Методы решения систем линейных и нелинейных уравнений
accel1:=x-f/d1-der2(x)*f*f/(2*d1 3)
end.
Метод Эйткена - Стеффенсона. Если
функция F(x) непрерывна
и трижды непрерывно дифференцируема
на отрезке [a, b], причем |F'(x)|
< 1, то сходимость
итерационного процесса
может быть значительно увеличена,
если использовать следующий
алгоритм. На каждом шаге вычисления
проводятся в три этапа:
находим
,
затем на основе
рассчитываем
и далее по трем значениям хn
,
,
определяем приближение
по следующей формуле:
.
(1.21)
Итерации заканчиваются, когда знаменатель становится близким к нулю. Описанный алгоритм вычисления следующего приближения уже по имеющемуся реализован в про-
цедуре-функции accel2. Значение и тип параметров ясны из текста процедуры-функции accel2, которая, в свою очередь, обращается к функции, возвращающей значение F(x).
Function accel2(x:real) : real;
var f1,f2 : real;
begin
{ ** func вычисляет значение функции в точке x **}
f1:=func(x);
f2:=func(f1);
accel2:=(x*f2-f1*f1)/(f2-2*f1+x)
end; { *** accel2 ***} .
Сравнительные расчеты, выполненные с использованием процедур accel1, accel2 (по формулам 1.20 и 1.21) и newt, реализующей метод Ньютона (1.19), показали, что при использовании "ускоряющих" процедур для некоторых функций удается добиться ускорения сходимости в 3 - 5 раз.
§ 3. Методы решения систем линейных и нелинейных уравнений
Система m линейных алгебраических уравнений с n неизвестными в общем виде может быть записана следующим образом:
(1.22)
или в матричном виде AX = B,
где A - прямоугольная
матрица размерности m´n,
X - вектор n-го порядка,
B - вектор m-го порядка.
Решением системы (1.22)
называется такая
упорядоченная совокупность
чисел
которая обращает все уравнения
системы в верные равенства.
Две системы называются эквивалентными
(равносильными),
если множества их решений
совпадают.
Система линейных уравнений называется совместной, если она имеет хотя бы одно решение, и несовместной - в противном случае. Совместная система называется определенной, если она имеет единственное решение, и неопределенной - в противном случае. Система является определенной, если rang A = rang B, где матрица B, полученная из матрицы A добавлением столбца свободных членов, называется расширенной.
Если матрица A - квадратная и det A 0, то она называется неособенной (невырожденной), при этом система уравнений, имеющая неособенную матрицу A, совместна и имеет единственное решение.
Eсли уравнения (1.22) являются нелинейными относительно неизвестного вектора Х, то соответствующая система, записанная в векторной форме
(1.23)
называется системой нелинейных уравнений. Она может быть также представлена в координатном виде:
1 < k < n.
Многообразие численных методов решения систем линейных алгебраических уравнений можно разделить на два класса: прямые (или точные) и итерационные (или приближенные) методы. В настоящем параграфе рассматриваются наиболее эффективные алгоритмы, реализующие ряд методов из обоих классов. Однако заметим, что нелинейные системы решают только итерационными методами, один из которых (метод Ньютона) рассматривается в настоящем параграфе.
