
- •Тема 1: Приближенное решение алгебраических и трансцендентных уравнений.
- •Тема 2. Алгебраическое интерполирование.
- •1. Постановка задачи.
- •Тема 3. Приближенное интегрирование.
- •Тема 4. Вычислительные задачи линейной алгебры. Решение систем линейных алгебраических уравнений.
- •Тема 5. Интегрирование дифференциальных уравнений.
- •1. Постановка задачи.
- •Тема 6. Вычисление значений элементарных функций.
- •Тема 7. Нелинейная оптимизация.
Тема 4. Вычислительные задачи линейной алгебры. Решение систем линейных алгебраических уравнений.
1. Постановка задачи. Правило Крамера.
Системой n линейных уравнений с n неизвестными называется система следующего вида
(1)
Система (1) компактно записывается в виде AX=B (1'), где A – матрица коэффициентов, X – вектор-столбец неизвестных, а B – вектор-столбец правых частей.
A=
,
X=
,
B=
Перемножение матриц осуществляется по правилу "строка на столбец", т. е. элемент матрицы-произведения равен сумме произведений элементов соответствующей строки первой матрицы на соответствующие элементы столбца второй матрицы.
Решить систему (1) или (1') – значит найти вектор X, при умножении на который матрицы A получается вектор B.
Существует теорема, согласно которой система (1) имеет единственное решение, если det(A)≠0.
Существуют
формулы Крамера, согласно которым
xi=
(A),
где Δi
– определитель, полученный из Δ=det(A)
заменой i-того
столбца столбцом правых частей.
Формулы Крамера имеют важное теоретическое значение, но практически малоценны, т. к. требуют вычисления (n+1)-ого определителя (слишком долго и неточно (из-за вычислительной погрешности)).
Методы решения делятся на точные (Крамера, Гаусса, оптического исключения, Жордана, квадратного корня) и приближенные (итераций, Зейделя).
2. Метод исключения Гаусса (схема единственного деления).
Пусть
дана система вида (1). Предположим, что
a11≠0
и преобразуем первое уравнение системы
(1) к виду x1+a12(1)x2+…+a1n(1)xn=b1(1)
(2), где a1j(1)=
;
b1(1)=
(j=2,
3…n).
Умножим (2) на коэффициенты 1, a21,
a31…an1
и вычтем из соответствующих уравнений
системы (1). Получим новую систему
(3). Здесь
aij(1)=aij-a1j(1)•ai1;
bi(1)=bi-b1(1)•ai1
(i, j=2, 3…n).
Система (3) содержит (n-1)-но уравнение с (n-1)-ним неизвестным.
Предположим,
что a22≠0
и преобразуем первое уравнение системы
(3) к виду x2+a23(2)x3+…+a2n(2)xn=b2(2)
(4), где a2j(2)=
;
b2(2)=
(j=2,
3…n).
Умножим (4) на коэффициенты 1, a32,
a42…an2
и вычтем из соответствующих уравнений
системы (3). Получим новую систему
(5). Здесь
aij(2)=aij(1)-a2j(2)•ai2(1);
bi(2)=bi(1)-b2(2)•ai2(1)
(i, j=3, 4…n).
На
k-том
этапе
получим
уравнение
xk+akk+1(k)xk+1+…+akn(k)xn=bk(k)
(6), где
akj(k)=
;
bk(k)=
(j=k,
k+1…n) и
систиему
(5). Здесь
aij(k)=aij(k-1)-akj(k)•aik(k-1);
bi(k)=bi(k-1)-bk(k)•aik(k-1)
(i,
j=k+1, k+2…n).
Эти
формулы не очень удобны, т. к. в правой
части есть результаты текущего шага.
Более удобными являются формулы
aij(k)=aij(k-1)-
•aik(k-1);
bi(k)=bi(k-1)-
•aik(k-1).
В
результате (n-1)
исключений объединим в систему уравнения
(2), (4)…(6)… Получим систему с треугольной
матрицей
(8).
Получение системы с треугольной матрицей, т. е. сведение системы к виду (8) называется прямым ходом метода Гаусса. Неизвестные получаются последовательно, начиная с xn и заканчивая x1. Это будет обратный ход. Недостатком метода является условие akk(k-1)≠0, которое нельзя предсказать заранее.
Метод Гаусса плох, если на каком-то этапе коэффициент akk(k-1) станет малым. При делении больших чисел на малые теряется точность, поэтому метод Гаусса не применяется для систем с n≥20. В этом случае применяется метод Гаусса с выбором главного элемента. Он состоит в том, что на каждом этапе прямого хода в оставшейся системе выбирается наибольший коэффициент и порядок значений и неизвестных меняется таким образом, чтобы наибольший коэффициент оказался на главной диагонали. В этом случае условие применимости метода выполняется автоматически. Недостатком метода является громоздкость, связанная с вычислением коэффициентов. Существуют и другие точные методы (оптического исключения, Жордана, квадратного корня)
3. Метод простой итерации.
Пусть
дана система вида (1). Предположим, что
aii≠0
разрешим первое уравнение этой системы
относительно x1,
второе – относительно x2
и так далее. Получим систему
(9),
где βi=
(i=1,
2…n),
αij=
(i≠j=1,
2…n);
αij=0
(i=j)
X=Β-ΑX
(10), где X=
,
Β=
,
Α=
– нормированная матрица коэффициентов.
Зададим
начальное приближение X0=
.
По (10) X1=Β-ΑX0
найдем X1=
,
затем найдем X2
и так далее. Получим последовательность
векторов {Xk}.
Если эта последовательность сходится
к какому-либо вектору, то этот вектор
будет решением системы (1). Это сходимость
по норме.
Рабочие
формулы метода имеют вид:
В качестве начального приближения целесообразно использовать "неправильные" значения, найденные по методу Гаусса. Обычно полагают X0=Β
Свойства метода таковы, что если сходимость есть при каком-то значении X0, то она есть при любом значении X0. Метод самонаправляющийся.
Теорема 8.
Процесс
итераций системы (10) X(i+1)=Β-ΑXi
сходится к единственному решению, если
какая-либо норма матрицы Α
меньше единицы. Норма – число, ставящееся
в соответствие матрице. Норму можно
вычислить тремя способами. ||A||1=
αij|
– максимальная сумма модулей коэффициентов
по строкам. ||A||2=
αij|
– максимальная сумма модулей коэффициентов
по столбцам. ||A||3=
.
В
таком виде эту теорему применять
неудобно, поэтому на практике используют
следствие из этой теоремы: для системы
вида (1) AX=B
достаточным условием сходимости
итерационного процесса будет выполнение
одного из двух неравенств i≠j
|aii|>
aij|;
i≠j
|aii|>
aij|.
т. е. модуль диагональных элементов
любой строки (столбца) должен быть больше
суммы модулей остальных элементов этой
строки (столбца). Любую систему вида
(1), если det(A)≠0,
можно свести к сходящемуся виду,
рассматривая линейные комбинации
уравнений.
Существуют
разновидности метода итераций, в
частности, метод Зейделя. Условия
сходимости остаются такими же, исходные
предпосылки тоже. Рабочие формулы метода
Зейделя имеют вид:
Метод квадратного корня.
Это
точный метод, предназначенный для
решения систем вида (1) AX=C,
матрицы которых симметричны, т. е. A=AT
или aij=aji.
В курсе линейной алгебре доказывается,
что любая симметричная матрица может
быть представлена в виде произведения
верхней и нижней треугольных матриц,
т. е. A=B•BT,
где B=
.
Систему (1) можно заменить другой системой
BT•B•X=C.
Обозначим B•X=Y.
Получим новую систему BT•Y=C,
решение которой может быть получено
методом, аналогичным обратному ходу
метода Гаусса
.
Вычислив вектор Y,
определим вектор X
из системы B•X=Y
методом, аналогичным обратному ходу
метода Гаусса
Поэтому
основная проблема заключается в
разложении симметричной матрицы A
на две треугольных B
и BT.
•
=A.
По правилу умножения матриц, a11=b112b11=
;
a1j=b11•b1jb1j=
j=2,
3…n.
Для второй строки a22=b122+b222
b22=
;
a2j=b12b1j+b22b2j
b2j=
j=3,
4…n.
Значение a21
не следует рассматривать отдельно, т.
к. a21=a12.
Для i-той
строки aii=b1i2+b2i2+…+bii2bii=
;
aij=
kibkj
j=i+1,
i+2…n.
Таким образом, рабочие формулы метода
имеют вид b11=
;
b1j=
k=2,
3…n;
bii=
;
bij=
1<i<j≤n