Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Лабы / ЧМ.Лабы.Лисовец / ЧМ.labs.by mice / lab08 / doc / from www.alglib.sources.ru (11.05.2005) / Решение СЛАУ методом Гаусса / Решение СЛАУ методом Гаусса - Библиотека алгоритмов

.htm
Скачиваний:
29
Добавлен:
17.04.2013
Размер:
16.57 Кб
Скачать

Решение СЛАУ методом Гаусса - Библиотека алгоритмов H2 { FONT-SIZE: larger; FONT-FAMILY: Tahoma,sans-serif } H3 { FONT-SIZE: 12pt; FONT-FAMILY: Arial,sans-serif } INPUT { FONT-SIZE: 9pt; FONT-FAMILY: Courier New,monospace } UL { TEXT-ALIGN: justify } OL { TEXT-ALIGN: justify } A.leftmenu { FONT-SIZE: 8pt; COLOR: #cc0000; FONT-FAMILY: Tahoma,sans-serif; TEXT-DECORATION: none } A.leftmenu:hover { TEXT-DECORATION: underline } A.artlist { COLOR: #111177; TEXT-DECORATION: none } A.artlist:visited { COLOR: #111177; TEXT-DECORATION: none } A.artlist:hover { COLOR: #111177; TEXT-DECORATION: underline } A.special { FONT-SIZE: 10pt; COLOR: #000066 } A.special:visited { FONT-SIZE: 10pt; COLOR: #000066 } A.specialatt { FONT-WEIGHT: bold; FONT-SIZE: 10pt; COLOR: #aa0000 } A.specialatt:visited { FONT-WEIGHT: bold; FONT-SIZE: 10pt; COLOR: #aa0000 } .compact { MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px } .code { FONT-SIZE: 9pt; COLOR: #006699; FONT-FAMILY: Courier New, monospace } .smalltext { FONT-SIZE: 10pt } .halfsmalltext { FONT-SIZE: 11pt } .attention { FONT-WEIGHT: bold; COLOR: #aa0000 }

Главная Новости Форум Terms of use SOURCES.RU Алгоритмы - Системы линейных уравнений - Метод Гаусса   Решение СЛАУ методом Гаусса Процедура решает неоднородную систему n линейных алгебраических уравнений с n неизвестными:

a11 x1  + a12 x2  + ... +a1n xn  = a1n+1 

a21 x1  + a22 x2  + ... +a2n xn  = a2n+1 

....

an1 x1  + an2 x2  + ... +ann xn  = ann+1 

Вначале находим отличный от нуля коэффициент при x1 . Соответствующее уравнение переставляем с первым (если это необходимо). Получаем систему с a11  отличным от нуля. Разделив коэффициенты этого уравнения на a11 , получим:

x1  + b12 x2  + ... + b1n xn  = b1n+1 

При помощи этого уравнения исключаем x1  из исходной системы:

a (1)22 x2  + a (1)23 x3  + ... + a (1)2n xn  = a (1)2n+1 

....

a (1)n2 x2  + a (1)n3 x3  + ... + a (1)nn xn  = a (1)nn+1 

где

a (1)ij  = aij  - ai1 b1j  , i,j= 2...n

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

x1  + с12 x2  + ... + с1n xn  = с1n+1 

x2  + ... + c2n xn  = c2n+1 

....

xn  = cnn+1 

Теперь легко определить xn , xn-1 , ..., x1 .

Если при поиске отличного от нуля коэффициента такого не окажется, то матрица системы вырождена и алгоритм неприменим. Для сравнения с нолем в алгоритм передается малое число epsilon, и любое число, по модулю меньшее epsilon, считается нолем. В случае вырожденой матрицы функция возвращает False. Если матрица невырождена, то функция возвращает True, а переменная X содержит решение системы.

Если нашли ошибку в алгоритме - сообщите!

Реализация алгоритма Исходный код данного алгоритма доступен в версиях на C++, Visual Basic 6 и Delphi. Все версии идентичны по своей функциональности.

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

Если вы в первый раз посетили этот сайт, то: Скачайте и подключите библиотеку AP (12 КБ) - библиотеку классов и функций, которая необходима для работы программ с сайта. Архив содержит версии библиотеки для каждого из языков, представленных на сайте. Обязательно прочитайте FAQ. Обратите внимание на раздел, посвященный выбранному вами языку. И ещё - читайте комментарии. Сэкономите много времени, поскольку НУМЕРАЦИЯ ЭЛЕМЕНТОВ МАССИВОВ НЕ ВСЕГДА НАЧИНАЕТСЯ С НОЛЯ, а не все это замечают.

C++ Решение СЛАУ методом Гаусса (скачать, открыть в браузере)

Delphi Решение СЛАУ методом Гаусса (скачать, открыть в браузере)

Visual Basic 6 Решение СЛАУ методом Гаусса (скачать, открыть в браузере)

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

открыть AP-файл в браузере

БлоксхемыСкачать блок-схему алгоритма (для просмотра блок-схем используйте редактор блок-схем) ВНИМАНИЕ! Поддержка блок-схем приостановлена на неопределенный срок. Вы по-прежнему можете скачивать и просматривать их, но ошибки в них больше не исправляются, и новые алгоритмы размещаются на сайте без блок-схем. О причинах этого можно узнать в выпуске новостей от 23.09.04. Это не относится к программам на C++/Delphi/VB, которые сопровождаются в полном объеме.

    Бочканов Сергей, Быстрицкий Владимир

Copyright © 1999-2005

При поддержке проекта MANUAL.RU