- •§ 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.
Многообразие численных методов решения систем линейных алгебраических уравнений можно разделить на два класса: прямые (илиточные) иитерационные(илиприближенные) методы. В настоящем параграфе рассматриваются наиболее эффективные алгоритмы, реализующие ряд методов из обоих классов. Однако заметим, что нелинейные системы решают только итерационными методами, один из которых (метод Ньютона) рассматривается в настоящем параграфе.