Как решать системы уравнений методом гаусса. Матричная запись системы. Метод Гаусса. Метод Крамера. Матричный способ

Раздел 3. Численные методы решения уравнений

Виды математических моделей (уравнений) в теории электрических цепей

1. - системы линейных алгебраических уравнений –

линейные цепи постоянного и синусоидального переменного (комплексный метод) тока.

2 . - системы нелинейных алгебраических или

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

3. . системы нелинейных дифференциальных

уравнений первого порядка в обыкновенных производных – переходные процессы в нелинейных цепях.

Здесь F и ψ – вектор-функции, т.е. эквивалентно записи:

f 1 (X,b 1) = 0

f 2 (X,b 2) = 0

…………

f n (X,b n) = 0

а - записи:

ψ 1 (dX/dt,X,b 1 ,t) = 0

ψ 2 (dX/dt,X,b 2 ,t) = 0

…………………..

ψ n (dX/dt,X,b n ,t) = 0

Рассмотрим наиболее эффективные методы решения этих уравнений.

Численные методы решения систем линейных алгебраических уравнений (ЛАУ)

Метод Гаусса (исключения неизвестных)

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

Пусть система ЛАУ задана в виде:

,

где - квадратная матрица n – го порядка с ненулевыми диагональными элементами ; - вектор неизвестных; - вектор правых частей.

Алгоритм метода Гаусса состоит из прямого и обратного хода. Во время прямого хода осуществляется последовательное исключение неизвестных. Система приобретает вид:

Пересчет коэффициентов производится по формуле:

, где i, j = k+1, …n при исключение k -го неизвестного.

При этом столбец правых частей удобно рассматривать как n + 1 столбец матрицы коэффициентов , т.е. j = k+1, …n+1.

Обратный ход заключается в определении неизвестных, начиная с последнего уравнения где осталась одна неизвестная x n . Полученное значение x n подставляется в предыдущее уравнение и определяется x n -1 и т.д.

Для произвольного x k получается следующая формула:

где k = n, n -1,…1.

Трудоемкость метода Гаусса оценивается количеством выполняемых арифметических операций:

.

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



Основная идея метода разреженных матриц состоит в учете при вычислениях и хранении только ненулевых элементов матрицы . Степень разреженности матрицы характеризуется коэффициентом заполнения:

где n ннэ –число ненулевых элементов.

Существуют матрицы коэффициентов специального вида: ленточные, когда ненулевые элементы располагаются вдоль главной диагонали; и блочно-диагональные, когда вдоль главной диагонали располагаются ненулевые блоки. Еще встречаются блочно-диагональные с окаймлением.

Пример ленточной матрицы Пример блочно-диагональной матрицы


Пример блочно-диагональной матрицы с окаймлением

Для них разработаны специальные эффективные методы решения. Для диагональной – метод прогонки . Блочная распадается на отдельные группы уравнений по блокам, которые решаются методом Гаусса. Для блочно-диагональных с окаймлением существуют диакоптические методы решения.

Диакоптика – подход к исследованию сложных систем, заключающейся в расчленение системы на части и её анализе по частям при учете всех связей между выделенными частями.

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

Что значит решить методом Гаусса?

Для начала необходимо нашу систему уравнений записать в Выглядит это следующим образом. Берется система:

Коэффициенты записываются в виде таблицы, а справа отдельным столбиком - свободные члены. Столбец со свободными членами отделяется для удобства Матрица, включающая в себя этот столбец, называется расширенной.

Далее основную матрицу с коэффициентами нужно привести к верхней треугольной форме. Это основной момент решения системы методом Гаусса. Проще говоря, после определенных манипуляций матрица должна выглядеть так, чтобы в ее левой нижней части стояли одни нули:

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

Это описание решения методом Гаусса в самых общих чертах. А что получится, если вдруг у системы нет решения? Или их бесконечно много? Чтобы ответить на эти и еще множество вопросов, необходимо рассмотреть отдельно все элементы, использующиеся при решении методом Гаусса.

Матрицы, их свойства

Никакого скрытого смысла в матрице нет. Это просто удобный способ записи данных для последующих операций с ними. Бояться их не надо даже школьникам.

Матрица всегда прямоугольная, потому что так удобнее. Даже в методе Гаусса, где все сводится к построению матрицы треугольного вида, в записи фигурирует прямоугольник, только с нулями на том месте, где нет чисел. Нули можно не записывать, но они подразумеваются.

Матрица имеет размер. Ее "ширина" - число строк (m), "длина" - число столбцов (n). Тогда размер матрицы A (для их обозначения обычно используются заглавные латинские буквы) будет обозначаться как A m×n . Если m=n, то эта матрица квадратная, и m=n - ее порядок. Соответственно, любой элемент матрицы A можно обозначить через номер его строки и столбца: a xy ; x - номер строки, изменяется , y - номер столбца, изменяется .

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

Определитель

Еще у матрицы есть определитель. Это очень важная характеристика. Выяснять его смысл сейчас не стоит, можно просто показать, как он вычисляется, а потом рассказать, какие свойства матрицы он определяет. Наиболее простой способ нахождения определителя - через диагонали. В матрице проводятся воображаемые диагонали; элементы, находящиеся на каждой из них, перемножаются, а затем полученные произведения складываются: диагонали с наклоном вправо - со знаком "плюс", с наклоном влево - со знаком "минус".

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

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

Классификация систем

Существует такое понятие, как ранг матрицы. Это максимальный порядок ее определителя, отличного от нуля (если вспомнить про базисный минор, можно сказать, что ранг матрицы - порядок базисного минора).

По тому, как обстоят дела с рангом, СЛАУ можно разделить на:

  • Совместные. У совместных систем ранг основной матрицы (состоящей только из коэффициентов) совпадает с рангом расширенной (со столбцом свободных членов). Такие системы имеют решение, но необязательно одно, поэтому дополнительно совместные системы делят на:
  • - определенные - имеющие единственное решение. В определенных системах равны ранг матрицы и количество неизвестных (или число столбцов, что есть одно и то же);
  • - неопределенные - с бесконечным количеством решений. Ранг матриц у таких систем меньше количества неизвестных.
  • Несовместные. У таких систем ранги основной и расширенной матриц не совпадают. Несовместные системы решения не имеют.

Метод Гаусса хорош тем, что позволяет в ходе решения получить либо однозначное доказательство несовместности системы (без вычисления определителей больших матриц), либо решение в общем виде для системы с бесконечным числом решений.

Элементарные преобразования

До того как приступить непосредственно к решению системы, можно сделать ее менее громоздкой и более удобной для вычислений. Это достигается за счет элементарных преобразований - таких, что их выполнение никак не меняет конечный ответ. Следует отметить, что некоторые из приведенных элементарных преобразований действительны только для матриц, исходниками которых послужили именно СЛАУ. Вот список этих преобразований:

  1. Перестановка строк. Очевидно, что если в записи системы поменять порядок уравнений, то на решение это никак не повлияет. Следовательно, в матрице этой системы также можно менять местами строки, не забывая, конечно, про столбец свободных членов.
  2. Умножение всех элементов строки на некоторый коэффициент. Очень полезно! С помощью него можно сократить большие числа в матрице или убрать нули. Множество решений, как обычно, не изменится, а выполнять дальнейшие операции станет удобнее. Главное, чтобы коэффициент не был равен нулю.
  3. Удаление строк с пропорциональными коэффициентами. Это отчасти следует из предыдущего пункта. Если две или более строки в матрице имеют пропорциональные коэффициенты, то при умножении/делении одной из строк на коэффициент пропорциональности получаются две (или, опять же, более) абсолютно одинаковые строки, и можно убрать лишние, оставив только одну.
  4. Удаление нулевой строки. Если в ходе преобразований где-то получилась строка, в которой все элементы, включая свободный член, - ноль, то такую строку можно назвать нулевой и выкинуть из матрицы.
  5. Прибавление к элементам одной строки элементов другой (по соответствующим столбцам), умноженных на некоторый коэффициент. Самое неочевидное и самое важное преобразование из всех. На нем стоит остановиться поподробнее.

Прибавление строки, умноженной на коэффициент

Для простоты понимания стоит разобрать этот процесс по шагам. Берутся две строки из матрицы:

a 11 a 12 ... a 1n | b1

a 21 a 22 ... a 2n | b 2

Допустим, необходимо ко второй прибавить первую, умноженную на коэффициент "-2".

a" 21 = a 21 + -2×a 11

a" 22 = a 22 + -2×a 12

a" 2n = a 2n + -2×a 1n

Затем в матрице вторая строка заменяется на новую, а первая остается без изменений.

a 11 a 12 ... a 1n | b1

a" 21 a" 22 ... a" 2n | b 2

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

В общем виде

Пусть существует система. Она имеет m уравнений и n корней-неизвестных. Записать ее можно следующим образом:

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

  • первая строка матрицы умножается на коэффициент k = (-a 21 /a 11);
  • первая измененная строка и вторая строка матрицы складываются;
  • вместо второй строки в матрицу вставляется результат сложения из предыдущего пункта;
  • теперь первый коэффициент в новой второй строке равен a 11 × (-a 21 /a 11) + a 21 = -a 21 + a 21 = 0.

Теперь выполняется та же серия преобразований, только участвуют первая и третья строки. Соответственно, в каждом шаге алгоритма элемент a 21 заменяется на a 31 . Потом все повторяется для a 41 , ... a m1 . В итоге получается матрица, где в строках первый элемент равен нулю. Теперь нужно забыть о строке номер один и выполнить тот же алгоритм, начиная со второй строки:

  • коэффициент k = (-a 32 /a 22);
  • с "текущей" строкой складывается вторая измененная строка;
  • результат сложения подставляется в третью, четвертую и так далее строки, а первая и вторая остаются неизменными;
  • в строках матрицы уже два первых элемента равны нулю.

Алгоритм надо повторять, пока не появится коэффициент k = (-a m,m-1 /a mm). Это значит, что в последний раз алгоритм выполнялся только для нижнего уравнения. Теперь матрица похожа на треугольник, или имеет ступенчатую форму. В нижней строчке имеется равенство a mn × x n = b m . Коэффициент и свободный член известны, и корень выражается через них: x n = b m /a mn . Полученный корень подставляется в верхнюю строку, чтобы найти x n-1 = (b m-1 - a m-1,n ×(b m /a mn))÷a m-1,n-1 . И так далее по аналогии: в каждой следующей строке находится новый корень, и, добравшись до "верха" системы, можно отыскать множество решений . Оно будет единственным.

Когда нет решений

Если в одной из матричных строк все элементы, кроме свободного члена, равны нулю, то уравнение, соответствующее этой строке, выглядит как 0 = b. Оно не имеет решения. И поскольку такое уравнение заключено в систему, то и множество решений всей системы - пустое, то есть она является вырожденной.

Когда решений бесконечное количество

Может получиться так, что в приведенной треугольной матрице нет строк с одним элементом-коэффициентом уравнения, и одним - свободным членом. Есть только такие строки, которые при переписывании имели бы вид уравнения с двумя или более переменными. Значит, у системы имеется бесконечное число решений. В таком случае ответ можно дать в виде общего решения. Как это сделать?

Все переменные в матрице делятся на базисные и свободные. Базисные - это те, которые стоят "с краю" строк в ступенчатой матрице. Остальные - свободные. В общем решении базисные переменные записываются через свободные.

Для удобства матрица сначала переписывается обратно в систему уравнений. Потом в последнем из них, там, где точно осталась только одна базисная переменная, она остается с одной стороны, а все остальное переносится в другую. Так делается для каждого уравнения с одной базисной переменной. Потом в остальные уравнения, там, где это возможно, вместо базисной переменной подставляется полученное для нее выражение. Если в результате опять появилось выражение, содержащее только одну базисную переменную, она оттуда опять выражается, и так далее, пока каждая базисная переменная не будет записана в виде выражения со свободными переменными. Это и есть общее решение СЛАУ.

Можно также найти базисное решение системы - дать свободным переменным любые значения, а потом для этого конкретного случая посчитать значения базисных переменных. Частных решений можно привести бесконечно много.

Решение на конкретных примерах

Вот система уравнений.

Для удобства лучше сразу составить ее матрицу

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

вторая строка: k = (-a 21 /a 11) = (-3/1) = -3

a" 21 = a 21 + k×a 11 = 3 + (-3)×1 = 0

a" 22 = a 22 + k×a 12 = -1 + (-3)×2 = -7

a" 23 = a 23 + k×a 13 = 1 + (-3)×4 = -11

b" 2 = b 2 + k×b 1 = 12 + (-3)×12 = -24

третья строка: k = (-a 3 1 /a 11) = (-5/1) = -5

a" 3 1 = a 3 1 + k×a 11 = 5 + (-5)×1 = 0

a" 3 2 = a 3 2 + k×a 12 = 1 + (-5)×2 = -9

a" 3 3 = a 33 + k×a 13 = 2 + (-5)×4 = -18

b" 3 = b 3 + k×b 1 = 3 + (-5)×12 = -57

Теперь, чтобы не запутаться, необходимо записать матрицу с промежуточными результатами преобразований.

Очевидно, что такую матрицу можно сделать более удобной для восприятия с помощью некоторых операций. Например, из второй строки можно убрать все "минусы", умножая каждый элемент на "-1".

Стоит также заметить, что в третьей строке все элементы кратны трем. Тогда можно сократить строку на это число, умножая каждый элемент на "-1/3" (минус - заодно, чтобы убрать отрицательные значения).

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

k = (-a 32 /a 22) = (-3/7) = -3/7 (если в ходе некоторых преобразований в ответе получилось не целое число, рекомендуется для соблюдения точности вычислений оставить его "как есть", в виде обыкновенной дроби, а уже потом, когда получены ответы, решать, стоит ли округлять и переводить в другую форму записи)

a" 32 = a 32 + k×a 22 = 3 + (-3/7)×7 = 3 + (-3) = 0

a" 33 = a 33 + k×a 23 = 6 + (-3/7)×11 = -9/7

b" 3 = b 3 + k×b 2 = 19 + (-3/7)×24 = -61/7

Снова записывается матрица с новыми значениями.

1 2 4 12
0 7 11 24
0 0 -9/7 -61/7

Как видно, полученная матрица уже имеет ступенчатый вид. Поэтому дальнейшие преобразования системы по методу Гаусса не требуются. Что здесь можно сделать, так это убрать из третьей строки общий коэффициент "-1/7".

Теперь все красиво. Дело за малым - записать матрицу опять в виде системы уравнений и вычислить корни

x + 2y + 4z = 12 (1)

7y + 11z = 24 (2)

Тот алгоритм, по которому сейчас будут находиться корни, называется обратным ходом в методе Гаусса. В уравнении (3) содержится значение z:

y = (24 - 11×(61/9))/7 = -65/9

И первое уравнение позволяет найти x:

x = (12 - 4z - 2y)/1 = 12 - 4×(61/9) - 2×(-65/9) = -6/9 = -2/3

Такую систему мы имеем право назвать совместной, да еще и определенной, то есть имеющей единственное решение. Ответ записывается в следующей форме:

x 1 = -2/3, y = -65/9, z = 61/9.

Пример неопределенной системы

Вариант решения определенной системы методом Гаусса разобран, теперь необходимо рассмотреть случай, если система неопределенная, то есть для нее можно найти бесконечно много решений.

х 1 + х 2 + х 3 + х 4 + х 5 = 7 (1)

3х 1 + 2х 2 + х 3 + х 4 - 3х 5 = -2 (2)

х 2 + 2х 3 + 2х 4 + 6х 5 = 23 (3)

5х 1 + 4х 2 + 3х 3 + 3х 4 - х 5 = 12 (4)

Сам вид системы уже настораживает, потому что количество неизвестных n = 5, а ранг матрицы системы уже точно меньше этого числа, потому что количество строк m = 4, то есть наибольший порядок определителя-квадрата - 4. Значит, решений существует бесконечное множество, и надо искать его общий вид. Метод Гаусса для линейных уравнений позволяет это сделать.

Сначала, как обычно, составляется расширенная матрица.

Вторая строка: коэффициент k = (-a 21 /a 11) = -3. В третьей строке первый элемент - еще до преобразований, поэтому не надо ничего трогать, надо оставить как есть. Четвертая строка: k = (-а 4 1 /а 11) = -5

Умножив элементы первой строки на каждый их коэффициентов по очереди и сложив их с нужными строками, получаем матрицу следующего вида:

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

Получилась такая матрица. Пока еще не записана система, нужно здесь определить базисные переменные - стоящие при коэффициентах a 11 = 1 и a 22 = 1, и свободные - все остальные.

Во втором уравнении есть только одна базисная переменная - x 2 . Значит, ее можно выразить оттуда, записав через переменные x 3 , x 4 , x 5 , являющиеся свободными.

Подставляем полученное выражение в первое уравнение.

Получилось уравнение, в котором единственная базисная переменная - x 1 . Проделаем с ней то же, что и с x 2 .

Все базисные переменные, которых две, выражены через три свободные, теперь можно записывать ответ в общем виде.

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

16, 23, 0, 0, 0.

Пример несовместной системы

Решение несовместных систем уравнений методом Гаусса - самое быстрое. Оно заканчивается сразу же, как только на одном из этапов получается уравнение, не имеющее решения. То есть этап с вычислением корней, достаточно долгий и муторный, отпадает. Рассматривается следующая система:

x + y - z = 0 (1)

2x - y - z = -2 (2)

4x + y - 3z = 5 (3)

Как обычно, составляется матрица:

1 1 -1 0
2 -1 -1 -2
4 1 -3 5

И приводится к ступенчатому виду:

k 1 = -2k 2 = -4

1 1 -1 0
0 -3 1 -2
0 0 0 7

После первого же преобразования в третьей строке содержится уравнение вида

не имеющее решения. Следовательно, система несовместна, и ответом будет пустое множество.

Преимущества и недостатки метода

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

Применение

Поскольку решение методом Гаусса представляет из себя алгоритм, а матрица - это, фактически, двумерный массив, его можно использовать при программировании. Но поскольку статья позиционирует себя, как руководство "для чайников", следует сказать, что самое простое, куда метод можно запихнуть - это электронные таблицы, например, Excel. Опять же, всякие СЛАУ, занесенные в таблицу в виде матрицы, Excel будет рассматривать как двумерный массив. А для операций с ними существует множество приятных команд: сложение (складывать можно только матрицы одинаковых размеров!), умножение на число, перемножение матриц (также с определенными ограничениями), нахождение обратной и транспонированной матриц и, самое главное, вычисление определителя. Если это трудоемкое занятие заменить одной командой, можно гораздо быстрее определять ранг матрицы и, следовательно, устанавливать ее совместность или несовместность.

Пусть дана система линейных уравнений

Коэффициенты при неизвестных составляют прямоугольную лицу

называемую матрицей системы. Первый индекс у коэффициента aij означает номер уравнения, второй - номер неизвестного, при котором стоит этот коэффициент. Коэффициенты Ь, , Ь гп называются свободными членами уравнений системы. Если свободные члены равны нулю, то система называется однородной , в противном случае - неоднородной. Матрицу

называют расширенной матрицей системы (2.1).

Решение системы (2.1) - это любой упорядоченный набор (ад, Х 2 , ? ??,х п) из п чисел, при подстановке которых в уравнения системы вместо соответствующих неизвестных каждое уравнение системы превращается в тождество. Система, не имеющая ни одного решения, называется несовместной , или противоречивой. Система, имеющая хотя бы одно решение, называется совместной.

Совместные системы подразделяют на определенные, обладающие единственным решением, и неопределенные, обладающие большим числом решений. Однородная система всегда совместна, так как имеет по крайней мере нулевое решение х - Х 2 - ... = х п = 0.

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

Над уравнениями системы обычно приходится проводить следующие элементарные преобразования:

  • 1) умножение обеих частей какого-либо уравнения на число, отличное от нуля;
  • 2) прибавление (вычитание) к одному уравнению другого, умноженного на некоторое число;
  • 3) перестановку уравнений;
  • 4) вычеркивание уравнений вида 0 х + 0 Х 2 + + 0 х п = 0, т.е. тождеств 0 = 0;
  • 5) перестановку неизвестных в системе уравнений.

В результате элементарных преобразований система преобразуется в эквивалентную. Общий способ отыскания решений обычно основывается на последовательном переходе с помощью элементарных преобразований от данной системы к такой эквивалентной системе, для которой решение находится просто. Одним из таких способов является метод последовательного исключения неизвестных (метод Гаусса). Алгоритм этого метода состоит в следующем.

Предположим, что коэффициент ац системы (2.1) отличен от нуля. Этого всегда можно добиться, переставляя в случае необходимости уравнения системы или неизвестные в ней и меняя нумерацию неизвестных. Умножим первое уравнение на а 2 /ац и вычтем из второго уравнения, затем на а^/ац и вычтем из третьего уравнения и т.д. Наконец, умножим первое уравнение на a m ja и вычтем из последнего уравнения. В результате неизвестное х будет исключено из всех уравнений, кроме первого, и система примет вид:

В системе (2.2) следует вычеркнуть уравнения вида 0 х + 0 Х 2 + ...+ +0 х п = 0, если такие появились. На этом первый шаг метода Гаусса заканчивается. Элемент Дц называют ведущим элементом этого шага.

Следующие шаги прямого хода метода Гаусса осуществляются аналогично. Так, на втором шаге при а 22 ^ 0 последовательно умножаем второе уравнение на а" 32 /а 22 , а! А2 /а! 22 , ..., a" m2 fa 22 и вычитаем его из 3-го, 4-го, ..., m-го уравнений. В результате неизвестное Х 2 исключается из всех уравнений, кроме 1-го и 2-го. На третьем шаге неизвестное хз исключается из всех уравнений, кроме первых трех, и т.д.

Возможно, что на некотором шаге прямого хода метода Гаусса встретится уравнение вида

Тогда рассматриваемая система несовместна, и дальнейшее ее решение прекращается. Если же при выполнении прямого хода метода Гаусса не встретятся уравнения вида (2.3), то рассматриваемая система не более чем через m шагов прямого хода преобразуется в эквивалентную систему вида

Для упрощения записи в системе (2.4) штрихи над коэффициентами опущены. В ней не более т уравнений, т.е. г ^ т, так как некоторые уравнения, возможно, были приведены к виду 0 = 0 и вычеркнуты, и, очевидно также, что г ^ п.

При г = п система (2.4) имеет треугольный вид:

и в ней легко совершить обратный ход метода Гаусса. Для этого из последнего уравнения этой системы найдем значение неизвестного х п. Подставив его в предпоследнее уравнение, найдем значение.x n _i. Продолжая так далее, однозначно определим все неизвестные х, Х 2 , ..., х п. Следовательно, если система (2.1) при прямом ходе метода Гаусса сводится к системе треугольного вида, то такая система определенная, т.е. имеет единственное решение.

При г система (2.4) имеет вид трапеции. В ней неизвестные х, Х 2 , ..., х г принимают за главные, а неизвестные х+, х г+ 2 , ..., х п - за свободные. Свободные неизвестные могут принимать любые фиксированные значения. Полагая x r+ = 7 r +i, х г+ 2 = Ъ-+ 2 , , х п = 7 п, где 7r+i, 7г+2? , 7п - произвольные постоянные, и проведя в системе обратный ход метода Гаусса, получим формулы:

которые составляют общее решение системы (2.1). Из общего решения (2.С) при конкретных значениях 7 r +i, 7г+2, , 7п будут получаться частные решения системы (2.1). Так как каждое свободное неизвестное может принимать бесчисленное множество значений, система (2.1) при г т.е. в случае, когда она приводится к трапецеидальному виду, обладает бесчисленным множеством решений. Это справедливо для совместных систем, имеющих меньше уравнений, чем неизвестных, и, в частности, для однородных, имеющих меньше уравнений, чем неизвестных.

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

Пример 2.1. Методом Гаусса решить систему уравнений

Решение. Оставляя в расширенной матрице системы

первую строку без изменения и вычитая утроенную первую строку из второй, удвоенную первую строку из третьей и четвертой, придем к эквивалентной матрице

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

Вычеркивая здесь третью строку, придем к матрице

которая соответствует системе

Отсюда, совершая обратный ход метода Гаусса, найдем

При мер 2.2. Методом Гаусса решить систему уравнений

Решение. Если в расширенной матрице системы

первую строку оставить без изменения, удвоенную первую строку вычесть из второй, утроенную первую строку вычесть из третьей, то получим матрицу

Строка (0 0 0 | - 5) соответствует уравнению 0 х + 0 х 2 + 0 хз = -5. Наличие такого уравнения указывает на несовместность рассматриваемой системы. ?

Пример 2.3. Методом Гаусса решить систему уравнений

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


Последняя матрица этой цепочки соответствует системе

Полагая здесь хз = 73 (77 - произвольная постоянная) и проводя обратный ход метода Гаусса, получим общее решение:

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

При решении систем "вручную" методом Гаусса, чтобы избежать сложных вычислений, иногда в промежутках между шагами прямого хода метода Гаусса или до его начала целесообразно проделывать дополнительные элементарные преобразования над некоторыми уравнениями системы. Например, при решении "вручную" системы

целесообразно сначала из первого уравнения системы вычесть удвоенное третье, а остальные оставить без изменения. Тогда получим систему

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

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

Пусть дана система , ∆≠0. (1)
Метод Гаусса – это метод последовательного исключения неизвестных.

Суть метода Гаусса состоит в преобразовании (1) к системе с треугольной матрицей , из которой затем последовательно (обратным ходом) получаются значения всех неизвестных. Рассмотрим одну из вычислительных схем. Эта схема называется схемой единственного деления. Итак, рассмотрим эту схему. Пусть a 11 ≠0 (ведущий элемент) разделим на a 11 первое уравнение. Получим
(2)
Пользуясь уравнением (2), легко исключить неизвестные x 1 из остальных уравнений системы (для этого достаточно из каждого уравнения вычесть уравнение (2) предварительно умноженное на соответствующий коэффициент при x 1), то есть на первом шаге получим
.
Иными словами, на 1 шаге каждый элемент последующих строк, начиная со второй, равен разности между исходным элементом и произведением его «проекции» на первый столбец и первую (преобразованную) строку.
Вслед за этим оставив первое уравнение в покое, над остальными уравнениями системы, полученной на первом шаге, совершим аналогичное преобразование: выберем из их числа уравнение с ведущим элементом и исключим с его помощью из остальных уравнений x 2 (шаг 2).
После n шагов вместо (1) получим равносильную систему
(3)
Таким образом, на первом этапе мы получим треугольную систему (3). Этот этап называется прямым ходом.
На втором этапе (обратный ход) мы находим последовательно из (3) значения x n , x n -1 , …, x 1 .
Обозначим полученное решение за x 0 . Тогда разность ε=b-A·x 0 называется невязкой .
Если ε=0, то найденное решение x 0 является верным.

Вычисления по методу Гаусса выполняются в два этапа:

  1. Первый этап называется прямым ходом метода. На первом этапе исходную систему преобразуют к треугольному виду.
  2. Второй этап называется обратным ходом. На втором этапе решают треугольную систему, эквивалентную исходной.
Коэффициенты а 11 , а 22 , …, называют ведущими элементами.
На каждом шаге предполагалось, что ведущий элемент отличен от нуля. Если это не так, то в качестве ведущего можно использовать любой другой элемент, как бы переставив уравнения системы.

Назначение метода Гаусса

Метод Гаусса предназначен для решения систем линейных уравнений. Относится к прямым методам решения.

Виды метода Гаусса

  1. Классический метод Гаусса;
  2. Модификации метода Гаусса. Одной из модификаций метода Гаусса является схема с выбором главного элемента. Особенностью метода Гаусса с выбором главного элемента является такая перестановка уравнений, чтобы на k -ом шаге ведущим элементом оказывался наибольший по модулю элемент k -го столбца.
  3. Метод Жордано-Гаусса;
Отличие метода Жордано-Гаусса от классического метода Гаусса состоит в применении правила прямоугольника , когда направление поиска решения происходит по главной диагонали (преобразование к единичной матрице). В методе Гаусса направление поиска решения происходит по столбцам (преобразование к системе с треугольной матрицей).
Проиллюстрируем отличие метода Жордано-Гаусса от метода Гаусса на примерах.

Пример решения методом Гаусса
Решим систему:

Для удобства вычислений поменяем строки местами:

Умножим 2-ую строку на (2). Добавим 3-ую строку к 2-ой

Умножим 2-ую строку на (-1). Добавим 2-ую строку к 1-ой

Из 1-ой строки выражаем x 3:
Из 2-ой строки выражаем x 2:
Из 3-ой строки выражаем x 1:

Пример решения методом Жордано-Гаусса
Эту же СЛАУ решим методом Жордано-Гаусса.

Последовательно будем выбирать разрешающий элемент РЭ, который лежит на главной диагонали матрицы.
Разрешающий элемент равен (1).



НЭ = СЭ - (А*В)/РЭ
РЭ - разрешающий элемент (1), А и В - элементы матрицы, образующие прямоугольник с элементами СТЭ и РЭ.
Представим расчет каждого элемента в виде таблицы:

x 1 x 2 x 3 B
1 / 1 = 1 2 / 1 = 2 -2 / 1 = -2 1 / 1 = 1


Разрешающий элемент равен (3).
На месте разрешающего элемента получаем 1, а в самом столбце записываем нули.
Все остальные элементы матрицы, включая элементы столбца B, определяются по правилу прямоугольника.
Для этого выбираем четыре числа, которые расположены в вершинах прямоугольника и всегда включают разрешающий элемент РЭ.
x 1 x 2 x 3 B
0 / 3 = 0 3 / 3 = 1 1 / 3 = 0.33 4 / 3 = 1.33


Разрешающий элемент равен (-4).
На месте разрешающего элемента получаем 1, а в самом столбце записываем нули.
Все остальные элементы матрицы, включая элементы столбца B, определяются по правилу прямоугольника.
Для этого выбираем четыре числа, которые расположены в вершинах прямоугольника и всегда включают разрешающий элемент РЭ.
Представим расчет каждого элемента в виде таблицы:
x 1 x 2 x 3 B
0 / -4 = 0 0 / -4 = 0 -4 / -4 = 1 -4 / -4 = 1


Ответ : x 1 = 1, x 2 = 1, x 3 = 1

Реализация метода Гаусса

Метод Гаусса реализован на многих языках программирования, в частности: Pascal, C++, php, Delphi , а также имеется реализация метода Гаусса в онлайн режиме .

Использование метода Гаусса

Применение метода Гаусса в теории игр

В теории игр при отыскании максиминной оптимальной стратегии игрока составляется система уравнений, которая решается методом Гаусса.

Применение метода Гаусса при решении дифференциальных уравнений

Для поиска частного решения дифференциального уравнения сначала находят производные соответствующей степени для записанного частного решения (y=f(A,B,C,D)), которые подставляют в исходное уравнение. Далее, чтобы найти переменные A,B,C,D составляется система уравнений, которая решается методом Гаусса.

Применение метода Жордано-Гаусса в линейном программировании

В линейном программировании, в частности в симплекс-методе для преобразования симплексной таблицы на каждой итерации используется правило прямоугольника, в котором используется метод Жордано-Гаусса.