Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Num_Mat_Lesson_04.doc
Скачиваний:
2
Добавлен:
20.07.2019
Размер:
152.06 Кб
Скачать

3. Численные методы алгебры

выделяют четыре основных задачи линейной алгебры: решение системы линейных уравнений; вычисление определителя; нахождение обратной матрицы; определение собственных значений и собственных векторов матрицы.

3.1. Основные понятия.

К решению систем линейных алгебраических уравнений (СЛАУ) сводятся многочисленные практические задачи. Можно с полным основание утверждать, что решение линейных систем является одной из самых распространенных и важных задач вычислительной математики. У нас уже была возможность увидеть при рассмотрении сплайн-интерполяции.

Запишем систему n линейных уравнений с n неизвестными

a11X1+a12X2+…+a1nXn=b1,

a21X1+a22X2+…+a2nXn=b2,

--------------------------------

an1X1+an2X2+…+annXn=bn,

Совокупность коэффициентов этой системы запишем в виде таблицы

a11 a12 … a1n

A = a21 a22 … a2n

---------------

an1 an2 … ann

Данная таблица n2 элементов, состоящая из n строк и n столбцов называется квадратной матрицей порядка n. Если подобная матрица содержит mn элементов, расположенных в m строках и n столбцах, то она называется прямоугольной матрицей.

Используя понятие матрицы А, СЛАУ можно записать в матричном виде

АХ=В,

где Х и В – вектор-столбец неизвестных и вектор-столбец правых частей соответственно

X1 b1

X = X2 , B = b1 .

--- ---

Xn b1

в ряде случаев получаются системы уравнений с некоторыми специальными видами матриц. Вот некоторые примеры таких матриц

Симметрическая матрица

2 1 –1

1 3 2

–1 2 4

Верхняя треугольная матрица

1 2 3

0 –1 1

0 0 2

Единичная матрица (частный случай – диагональная)

1 0 0

E = 0 1 0

0 0 1

Клеточная матрица

1 2 1 0 0 0

2 –1 2 0 0 0

3 1 –1 0 0 0

0 0 0 1 2 3

0 0 0 4 5 6

0 0 0 7 8 9

Нулевая матрица

0 0 0 0

0 = 0 0 0 0

0 0 0 0

0 0 0 0

Ленточная матрица (частный случай – трех диагональная)

1 2 0 0 0

2 1 3 0 0

0 3 –1 2 0

0 0 2 1 5

0 0 0 2 1

О пределителем (детерминантом) матрицы А n-го порядка называется число D (det A), равное

a11 a12 … a1n

D = a21 a22 … a2n = .

---------------

an1 an2 … ann

Здесь индексы пробегают все возможные n! Перестановок номеров 1,2,…,n; k – число инверсий в данной перестановке (иногда говорят о числе беспорядков) всего должно быть n! слагаемых (в нашем случае 6).

a11 a12 a13

a21 a22 a23 = a11 a22 a33 – a12 a21 a33 – a11 a23 a32 – a13 a22 a31 + a12 a23 a31 +

a31 a32 a33 + a13 a21 a32.

Видно, что определитель треугольной матрицы равен произведению диагональных элементов.

Необходимым и достаточным условием существования единственного решения системы линейных уравнений является условие . В случае равенства нулю определителя системы матрица называется вырожденной; при этом СЛАУ либо не имеет решения, либо имеет их бесчисленное множество.

Все эти случаи легко проиллюстрировать для системы

a1X+b1Y=c1,

a2X+b2Y=c2.

Каждое из этих уравнений описывает прямую на плоскости; координаты точки пересечения указанных прямых являются решением системы. Рассмотрим три возможных случая взаимного расположения двух прямых на плоскости:

  1. прямые пересекаются – коэффициенты системы не пропорциональны a1/a2 b1/b2;

  2. прямые параллельны – коэффициенты системы подчиняются условиям a1/a2 = b1/b2 c1/c2;

  3. прямые совпадают – все коэффициенты пропорциональны

a1/a2 = b1/b2 = c1/c2.

Отметим, что при выполнении первого условия , и система имеет единственное решение. В двух других случаях D=0 (во втором случае – отсутствие решения, в третьем – бесчисленное множество решений).

На практике, особенно при вычислениях на ЭВМ, когда происходит округление или отбрасывание младших разрядов чисел, далеко не всегда удается получить точное равенство определителя нулю. При прямые могут оказаться почти параллельными (в случае системы двух уравнений); координаты точки пересечения этих прямых весьма чувствительны к изменению коэффициентов системы.

Таким образом, малые погрешности вычислений или исходных данных могут привести к существенным погрешностям в решении. Такие системы уравнений называются плохо обусловленными.

Заметим, что условие является необходимым, но не достаточным для плохой обусловленности системы линейных уравнений. Например, система уравнений n-го порядка с диагональной матрицей с элементами aii=0,1 не является плохо обусловленной, хотя ее определитель мал (D=10-n).

Приведенные соображения справедливы и для любого числа уравнений, хотя в случае n>3 нельзя привести простые геометрические иллюстрации. При n=3 каждое уравнение описывает плоскость в пространстве, и в случае почти параллельных плоскостей или линий их попарного пересечения получаем плохо обусловленную систему трех уравнений.

    1. Методы решения слау.

Методы решения систем линейных уравнений делятся на две группы – прямые и итерационные.

Прямые методы используют конечные соотношения (формулы) для вычисления неизвестных. Они дают решение после выполнения заранее известного числа операций. Эти методы сравнительно просты и наиболее универсальны, т.е. пригодны для решения широкого класса линейных систем.

Вместе с тем прямые методы имеют и ряд недостатков. Как правило, они требуют хранения в оперативной памяти ЭВМ сразу всей матрицы, и при больших значениях n расходуется много места в памяти. Далее прямые методы обычно не учитывают структуру матрицы – при большом числе нулевых элементов в разреженных матрицах (например, клеточных или ленточных) эти элементы занимают место в памяти машины, и над ними проводятся арифметические действия. Существенным недостатком прямых методов является также накапливание погрешностей в процессе решения, поскольку вычисление на любом этапе используют результаты предыдущих операций. Это особенно опасно для больших систем, когда резко возрастает общее число операций, а также для плохо обусловленных систем, весьма чувствительным к погрешностям.

Итерационные методы – это методы последовательных приближений. В них необходимо задать некоторое приближенное решение – начальное приближение и после этого с помощью некоторого алгоритма проводится один цикл вычислений, называемый итерацией. В результате находят новое приближение. Итерации проводят до получения решения с требуемой точностью. Алгоритмы итерационных методов более сложны, чем у прямых методов. Объем вычислений заранее определить трудно. Тем не менее они в ряде случаев предпочтительнее. Они требуют хранения в памяти не всей матрицы системы, а лишь нескольких векторов с n компонентами. Иногда элементы матрицы можно совсем не хранить, а вычислять их по мере необходимости. Погрешности окончательных результатов не накапливаются, поскольку точность вычислений в каждой итерации определяется лишь результатами предыдущей итерации и практически не зависит от ранее выполненных вычислений. Правда, сходимость итераций может быть очень медленной (нужно искать пути ускорения).

Итерационные методы могут использоваться для уточнения решений, полученных с помощью прямых методов. Такие смешанные алгоритмы обычно довольно эффективны, особенно для плохо обусловленных систем. В последнем случае могут также применяться методы регуляризации.

    1. Прямые методы.

Рассмотрим прямые методы. Одним из способов решения СЛАУ является правило Крамера, согласно которому каждое неизвестное представляется в виде отношения определителей. Так, для системы

a11X1+a12X2=b1,

a21X1+a22X2=b2,

неизвестные находятся следующим образом

X1=D1/D, X2=D2/D,

г де D= a11 a12 , D1= b1 a12 , D2= a11 b1 .

a21 a22 b2 a22 a21 b2

В общем случае (без использования экономичных методов) для вычисления определителя порядка n требуется (n-1)n! умножений и n!-1 сложений, т.е. общее число арифметических операций равно

Nопр = (n–1)n!+n!–1 = nn!–1 nn!.

Нам нужно вычислить n+1 определитель, а затем произвести n делений, т.е. общее число операций для правила Крамера

NКрам = (n+1)(nn!–1)+n.

Оцените время вычислений для ЭВМ с числом операций 106 в секунду при n=100.

Известен также метод решения линейной системы с использованием обратной матрицы.

Матрица А-1 называется обратной по отношению к квадратной матрице А, если их произведение равно единичной матрице АА-1-1А=Е. в линейной алгебре доказывается, что всякая невырожденная матрица А (т.е. с отличным от нуля определителем D) имеет обратную. При этом det A-1=1/D.

Запишем исходную матрицу в виде

a11 --- a1j --- a1n

-----------------

A = ai1 --- aij --- ain .

-----------------

ani --- anj --- ann

Минором элемента aij называется определитель n-1-го порядка, образованный из определителя матрицы А зачеркиванием i-й строки и j-го столбца.

Алгебраическим дополнением Aij элемента aij называется его минор, взятый со знаком плюс, если сумма i+j номеров строки i и столбца j четная, и со знаком минус если эта сумма нечетная, т.е.

a11 --- a1,j-1 a1,j+1 ---- a1n

----------------------------------

Aij = (–1)i+j ai-1,1 --- ai-1,j-1 ai-1,j+1 --- ai-1,n

ai+1,1 --- ai+1,j-1 ai+1,j+1 --- ai+1,n

----------------------------------

an1 ---- an,j-1 an,j+1 --- ann

Каждый элемент bij (i,j=1,…,n) обратной матрицы В=А-1 равен отношению алгебраического дополнения Aij элемента aji (не aij) исходной матрицы А к значению ее определителя D:

A11/D A21/D --- An1/D

B = A-1 = A12/D A22/D --- An2/D

---------------------------

A1n/D A2n/D --- Ann/D

Система записывается как АХ=В. умножая обе части слева на обратную матрицу А-1, получим Х=А-1В. этот метод также мало пригоден при больших n из-за большого объема вычислений (N=[(n–1)(n–1)!–1]n2+n2+nn!-1=n2n!-1).

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]