Слау методом гауса для численных методов

Автор работы: Пользователь скрыл имя, 03 Декабря 2012 в 18:44, курсовая работа

Описание работы

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

Содержание работы

Введение
1. Постановка задачи
1.1 Цель разработки
1.2 Область применения
1.3 Актуальность разработки ПП
1.4 Входные данные
1.5 Выходные данные
1.6 Схема информационных потоков
2. Решение систем линейных алгебраических уравнений методом гаусса
2.1 Основные понятия
2.2 Метод Гаусса. Исключение неизвестных
2.3 Однородная СЛАУ
3. Алгоритм решения задачи
3.1 Водные данные
3.3 Входные данные
3.4 Алгоритм
4. Проектирование интерфейса
5. Описание программной реализации
5.1 Функционально-логическая схема программы
5.2 Описание процедур и функций
5.3 Описание структур и форматов
6. Комплект поставки и порядок установки
7. Тестирование программы
Выводы
Список использованных источников
Приложение А
Приложение Б

Файлы: 1 файл

Курсовая и рамки.doc.docx

— 593.66 Кб (Скачать файл)


Изм.

ЛЛист

№ Документа

 Подпись     Дата

 Лист

КП.230105.091.03


Содержание

Аннотация

Введение

1. Постановка задачи

1.1 Цель разработки

1.2 Область применения

1.3 Актуальность разработки ПП

1.4 Входные данные

1.5 Выходные данные

1.6 Схема информационных потоков

2. Решение систем линейных алгебраических уравнений методом гаусса

2.1 Основные понятия

2.2 Метод Гаусса. Исключение неизвестных

2.3 Однородная СЛАУ

3. Алгоритм решения задачи

3.1 Водные данные

3.3 Входные данные

3.4 Алгоритм

4. Проектирование интерфейса

5. Описание программной реализации

5.1 Функционально-логическая схема программы

5.2 Описание процедур и функций

5.3 Описание структур и форматов

6. Комплект поставки и порядок установки

7. Тестирование программы

Выводы

Список использованных источников

Приложение А

Приложение Б

Приложение В

Приложение В

Приложение Г

Приложение Д

 

Аннотация

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

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

При выполнении данного ПП мною были получены навыки в решении систем линейных уравнений, а также в  достаточном объеме изучен язык программирования Pascal 7.0.

 

Введение

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

Решение систем уравнений, содержит четко  сформулированный алгоритм для проведения вычислений.

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

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

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

 

1. Постановка задачи

1.1 Цель разработки

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

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

1.2 Область применения

Использование данного ПП возможно в сфере образования в виде вспомогательной программы для  школьников и студентов при изучении метода Гаусса, для автоматизации  в решении СЛАУ, а также для  самоконтроля.

1.3 Актуальность разработки ПП

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

1.4 Входные данные

Входными данными программы  являются введенные с клавиатуры и из файла коэффициенты матрицы, а также вывод информации из файлов. Когда пользователь открывает ПП, на середину экрана выводится меню из текстового файла “menu. txt”. При выборе пункта "Теория" на экран выводится теоретический материал из файлов: “Text1. txt", “Text2. txt”, “Text3. txt", “Text4. txt”, “Text5. txt", “Text6. txt”. При выборе пункта "Пример" на экран выводятся примеры решения СЛАУ методом Гаусса из файлов “Primer1. txt”, “Primer2. txt”, “Primer3. txt”, “Primer4. txt”. При выборе пункта "Справка" на экран выводится справочный материал по программному продукту из файла “SPRAVKA1. txt".

1.5 Выходные данные

Выходными данными являются приведенная  к ступенчатому виду матрица, корни  СЛАУ и конечный результат, выведенный на экран и записанный в файл “Оtvet. txt".

1.6 Схема информационных потоков

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

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

Рисунок 1.1 - Схема информационных потоков для  вычисления СЛАУ методом Гаусса

 

Условные  обозначения к рисунку 1.1:

- данные, вводимые с клавиатуры

- данные, хранящиеся на диске

- данные, выводимые на экран

 

2. Решение систем линейных алгебраических  уравнений методом гаусса

2.1 Основные понятия

Система линейных алгебраических уравнений (СЛАУ) из m уравнений с n неизвестными х1,..., хn - это система уравнений вида

 

 

 

 

 

где числа называется коэффициентами СЛАУ, - свободными членами СЛАУ, причем .

Индекс  обозначает номер уравнения, а индекс - номер неизвестного.

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

СЛАУ называется квадратной, если в ней число уравнений равно  числу неизвестных, то есть .

СЛАУ называется однородной, если все ее свободные члены равны  нулю, то есть .

СЛАУ называется неоднородной, если среди ее свободных членов хотя бы один не равен нулю, то есть .

Решение СЛАУ (2.1) называется такая  совокупность значений неизвестных , которая каждое уравнение СЛАУ обращает в верное числовое равенство (тождество).

СЛАУ называется совместным, если она имеет хотя бы одно решения, и  не совместных, если она вообще не имеет  решений.

Совместная СЛАУ называется определенной, если она имеет единственное решение, и не определенной, если она имеет  более одного решения.

Неопределенная СЛАУ всегда имеет бесконечное множество решений. Тогда каждое ее решение называется частным решением СЛАУ, а множество всех частных решений называется общим решением СЛАУ.

СЛАУ называется эквивалентными, если они имеют одно и тоже множество решений.

Элементарными (тождественными) преобразованиями СЛАУ являются:

1) перестановка уравнений,

2) умножение любого уравнения  на число () прибавление одного уравнения к другому.

При элементарных преобразованиях  получают только эквивалентные значения СЛАУ.

2.2 Метод Гаусса. Исключение неизвестных

Метод Гаусса является универсальным, так как применим для исследования на совместность и решение не только квадратных, но и любых СЛАУ. Суть метода: СЛАУ кратко записывают в виде расширенной матрицы, которую с  помощью элементарных преобразований над строками приводят к ступенчатому виду.

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

Ступенчатая СЛАУ совместна только тогда, когда она не содержит строк  вида , где , так как им соответствуют противоречивые равенства вида . Строки вида отбрасываются, так как им соответствует тождество .

Решение совместной СЛАУ ступенчатого вида находят так: из последнего уравнения  СЛАУ находится значение неизвестной  и подставляется в вышестоящее уравнение, чтобы найти значение . Далее, используя значения этих двух неизвестных, поднимаются на ступеньку выше и находят значение xn-2 и так далее. Последним находят значение неизвестной x1 из 1-ого уравнения. Описанный процесс называется обратным ходом метода Гаусса.

2.3 Однородная СЛАУ

Однородная СЛАУ имеет вид

 

     2.1

 

 

 

В однородной СДАУ нулевой столбец  не меняется при элементарных преобразованиях  над строками расширенной матрицы. Поэтому в ней ранг матрицы коэффициентов всегда равен рангу расширенной матрицы. .

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

Теорема 1.

Для того чтобы однородная СЛАУ имела нулевые решения, необходимо и достаточно, чтобы ранг матрицы коэффициентов был меньше числа неизвестных .

Доказательство.

1) Необходимость. Предположим обратное, то есть, что, где - число неизвестных. Тогда порядок базисного минора Mn будет равен n, так как . Следовательно, по формулам Крамера однородная СЛАУ будет иметь единственное решение - нулевое: . Таким образом, при однородная СЛАУ ненулевых решений не имеет.

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

Теорема 2.

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

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

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

Теорема 2.

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

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

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

 

3. Алгоритм решения задачи

3.1 Водные данные

Входными данными в алгоритме  решения систем линейных уравнений  методом Гаусса являются:

: массив  вещ. {матрица}

: массив  вещ. {массив свободных коэффициентов}

: цел. {размер матрицы}

3.2 Промежуточные данные

Промежуточные данные в алгоритме  решения систем линейных уравнений  методом Гаусса являются:

: цел. {Индекс элементов. Номер строки,

которую обрабатываем}

: цел {номер "Базовой  строки"}

: вещ. {множитель для l - ой строки}

: цел {количество нулей в текущей строке}

: вещ. {сумма элементов, вычисляемая

при обратном ходе метода Гаусса}

3.3 Входные данные

Выходные данные в алгоритме  решения систем линейных уравнений  методом Гаусса являются:

: массив [1…N] вещ. {массив ответов}

Rez: цел. {количество решений матрицы:

0 - ни одного; 1 - одно;

3.4 Алгоритм

На рисунке 3.1 изображен ввод размера  матрицы, который должен быть больше нуля

 

Рисунок 3.1 Ввод

На рисунке 3.2 изображен цикл ввода коэффициентов.

Для

Рисунок 3.2 Цикл.

 

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

для

Рисунок 3.3 Ступенчатый  вид

На рисунке 3.4 показано что происходит если переменной Rez присваиваются значения 0, 1,2.

Rez: =1

для

Рисунок 3.4 Переменная Rez

 

Рисунок 3.5 является продолжением рисунка 3.4

если Rez=1 to          

 для  до 1 шаг -1              

{Вывод матрицы А и вектора х}  

 Иначе                

 Если  Rez = 0 то                

 Вывод  

 Иначе                   вывод

Рисунок 3.5 Переменная Rez.

 

4. Проектирование интерфейса

 

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

Информация о работе Слау методом гауса для численных методов