37832

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

Лабораторная работа

Математика и математический анализ

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

Русский

2013-09-25

207.5 KB

94 чел.

Лабораторная работа № 1

РЕШЕНИЕ  систем  линейных

алгебраичЕских  уравнений  МЕТОДОМ

ГАУССА  С  ВЫБОРОМ  ГЛАВНОГО  ЭЛЕМЕНТА

ЦЕЛЬ РАБОТЫ: изучить и программно реализовать на языке высокого уровня метод Гаусса с выбором главного элемента по столбцу, исследовать его точность и эффективность на тестовых задачах.

Метод Гаусса

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

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

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

Пусть задана система линейных алгебраических уравнений

 (1.1)

Процесс ее решения методом Гаусса делится на два этапа, называемых соответственно прямым и обратным ходом.

На первом этапе система (1.1) путем последовательного исключе-

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

 (1.2)

Исключение переменной  (k-й шаг прямого хода Гаусса) включает вычисление k-й строки треугольной матрицы:

 (1.3)

k-го свободного члена:

 (1.4)

преобразование уравнений системы (1.1) с номерами :

 (1.5)

В соотношениях (1.5) переменной внутреннего цикла является j, переменной внешнего цикла – i. Полное число шагов, за которое выполняется прямой ход Гаусса, равно n, т. е. расчеты по формулам (1.3) ÷ (1.5) выполняются для .

На втором этапе (обратный ход Гаусса) решают систему (1.2):

, (1.6)

последовательно определяя неизвестные

Описание алгоритма

Алгоритм решения СЛАУ методом Гаусса с выбором главного элемента по столбцу выглядит следующим образом:

Алгоритм 1.1

1. Присвоить компонентам массива перестановок  IOR(k)  исходные значения:

принять, после этого, .

2. Найти индекс , для которого

Это можно сделать так:

2.1. Положить AKK=0;

2.2. Вычислить в цикле ():

2.2.1. ;

2.2.2. Если , то перейти к п. 2.2.1;

2.2.3. .

3. Поменять местами значения  и , если :

и выбрать ведущий элемент

.

Если , то выйти из программы с информацией об ошибке ().

4. Исключить переменную  с помощью соотношений (1.3) ÷ (1.5) (прямой ход Гаусса):

4.1.

4.2.

4.3. Вычислить в цикле по i ():

4.3.1.

4.3.2.

4.3.3. .

5. Увеличить значение  на единицу и вернуться к п. 2, если  , иначе завершить прямой ход, вычислив

Если , то выйти из программы с сообщением .

6. Выполнить в цикле для  (обратный ход Гаусса):

.

Сделаем комментарии к описанному алгоритму. Выбор ведущего элемента  предполагает перестановку строк системы (1.1). Программно это нетрудно сделать, переставляя соответствующие строки матрицы коэффициентов и соответствующие компоненты вектора свободных членов. Подобную операцию можно и не выполнять, если ввести вспомогательный одномерный массив перестановок .  Первоначально в пункте 1 алгоритма его элементам ,  присваиваются исходные значения . Обратиться к элементу  матрицы коэффициентов с привлечением массива перестановок, значит использовать элемент , так как первоначально . Если , то обращение к элементам , приводит к использованию коэффициентов го уравнения системы. Следовательно, вместо перестановок строк матрицы коэффициентов достаточно поменять местами  и . Такой подход реализован в приведенном алгоритме при выборе ведущего элемента.

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

Задание

  1.  Написать, отладить и исследовать на задачах (табл. 1.1), предложенных преподавателем, программу численного решения систем линейных алгебраических уравнений методом Гаусса с выбором главного элемента по столбцу.
  2.  Вычислить для каждой задачи вектор невязки  (для этого до начала выполнения прямого хода Гаусса матрицу  и вектор  необходимо сохранить)

и  оценить его норму

.

Содержание электронного  отчета

  1.  Текст программы.
  2.  Задачи, результаты их решения, вычисленные значения нормы вектора невязки.

Таблица 1.1

Матрица коэффициентов A

Вектор b

1

6

13

-17

13

29

-38

-17

-38

50

2

4

-5

2

1

-1

0

2

-2

1

1

2

1

1

1

2

3

2.30

3.50

1.70

5.70

-2.70

2.30

-0.80

5.30

-1.80

-6.49

19.20

-5.09

4

2.75

3.28

1.15

1.78

0.71

2.70

1.11

1.15

3.58

15.71

43.78

37.11

5

8.64

-6.39

4.21

1.71

4.25

7.92

5.42

1.84

-3.41

10.21

 3.41

12.29

6

21.547

10.223

51.218

-95.510

-91.065

12.264

-96.121

 -7.343

86.457

-49.930

-12.465

 60.812

7

2.60

3.00

-6.00

-4.50

3.00

3.50

-2.00

4.30

3.00

19.07

 3.21

-18.25

8

2.31

4.21

3.49

31.49

22.42

 4.85

1.52

3.85

28.72

40.95

30.24

42.81

9

2.50

-3.50

-6.50

-3.00

2.60

-3.50

4.60

1.50

7.30

-1.05

-14.46

-17.73

10

0.14

1.07

0.64

0.24

-0.83

0.43

-0.84

0.56

-0.38

1.11

0.48

-0.83

11

2.74

1.12

0.81

-1.18

0.83

1.27

3.17

-2.16

0.76

2.18

-1.15

3.23

12

1.80

3.10

4.51

2.50

2.30

-1.80

4.60

-1.20

3.60

2.20

3.60

-1.70

Продолжение табл. 1.1

Матрица коэффициентов A

Вектор b

13

2.0

0.4

0.3

1.0

1.0

0.5

-1.0

0.2

-0.1

4.0

1.0

2.5

1.0

-8.5

5.2

-1.0

1.0

2.0

3.0

-1.0

14

2.21

8.30

3.92

3.77

3.65

2.62

8.45

7.21

1.69

4.10

7.78

8.04

6.99

1.90

2.46

2.28

-8.35

-10.65

12.21

15.45

15

3.81

2.25

5.31

9.39

0.25

1.32

6.28

2.45

1.28

4.58

0.98

3.35

0.75

0.49

1.04

2.28

4.21

6.47

2.38

10.48

16

7.90

8.50

4.30

3.20

5.60

-4.80

4.20

-1.40

5.70

0.80

-3.20

-8.90

-7.20

3.50

9.30

3.30

6.68

9.95

8.60

1.00

17

0.1582

0.1968

0.2368

1.1161

1.1675

0.2071

0.2471

0.1254

0.1768

1.2168

0.2568

0.1397

0.1871

0.2271

1.2671

0.1490

1.6471

1.7471

1.8471

1.5471

18

4.11

-1.26

3.18

1.29

-1.26

2.00

-1.97

3.81

-5.99

4.00

0.49

-1.56

1.29

0.00

-1.00

0.00

-0.75

1.08

3.38

0.87

19

1

1

2

3

1

2

0

1

1

-2

1

2

1

3

0

2

10

11

5

19

20

2

1

2

1

3

1

1

1

11

5

3

3

5

2

2

4

2

1

-3

-3

9


 

А также другие работы, которые могут Вас заинтересовать

60667. Знакомый и незнакомый Я. Воспитательный час 43.5 KB
  Мотивация Мы продолжаем цикл На пути к успеху Тема сегодняшнего часа раздумий Знакомый и незнакомый Я Работа в группах: Интересна ли эта тема для вас Чего вы ожидаете от нашего общения Какую цель перед собой вы ставите...
60668. Приёмы пришивания пуговиц. Шитьё игольницы 93 KB
  Задачи: учить работать с иглой и пуговицами; учить пришивать пуговицы; обучить выполнению шва назад иголку; развивать образное мышление речь творческий подход к делу; воспитывать интерес к созданию работы...