Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Вычислительная математика.pdf
Скачиваний:
49
Добавлен:
13.05.2015
Размер:
381.45 Кб
Скачать

5Вычислительные задачи линейной алгебры

Вычислительные задачи линейной алгебры подразделяются на:

1.Решение систем линейных алгебраических уравнений (СЛАУ);

2.Нахождение определителей;

3.Нахождение обратных матриц;

4.Задачи на собственные значения.

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

1.Прямые методы для задач линейной алгебры.

2.Итерационные методы решения СЛАУ.

3.Задачи на собственные значения.

5.1Прямые методы для задач линейной алгебры

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

 

~

 

 

 

a21

a22

. . . a2n

 

 

 

x2

~

b2

~x = b; где

 

=

a11

a12

. . . a1n

;

~x =

x1

; b =

b1

 

 

 

 

 

 

 

 

...

 

...

A

 

A

 

 

.

. . .

 

 

 

 

 

 

 

an1

an2

. . . ann

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

xn

 

bn

 

 

 

 

 

 

 

 

 

 

 

 

 

 

а также для их модификаций, позволяющих находить определители

det(A) = |A|

и обратные матрицы A−1

Этапы выполнения:

14

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

n

a11

a12 . . .

a1n b1

a21

a22 . . .

a2n b2

.

.

.

.

.

an1 an2 . . .

ann bn

где n — размерность системы, aij — элементы матрицы A, bi — компо-

 

 

 

 

~

 

ненты вектора-столбца свободных членов b. Для задач на нахождение

(

A

) или

A

−1 столбец свободных членов ~

должен игнорировать-

det

 

b

 

ся.

Решение. Написать программу, реализующую заданный численный метод.

Проверка. Задав имя файла, содержащего данные о задаче, запустить программу и получить результат. Программа должна выводить на экран исходные данные10, считанные из файла, решение11, проверку12.

Методы решения:

1.Нахождение A−1 методом Гаусса

2.Нахождение A−1 методом LUразложения

3.Решение СЛАУ методом Гаусса с постолбцовым выбором ведущего элемента

4.Решение СЛАУ методом LUразложения

5.Решение СЛАУ методом вращений

6.Решение СЛАУ методом квадратных корней

7.Нахождение det(A) по методу LU-разложения

8.Нахождение det(A) по методу квадратных корней

9.Нахождение det(A) по методу Гаусса с постолбцовым выбором ведущего элемента

10.Прогонка

11.Метод отражений

10

~

Для задач на решение СЛАУ — матрицу A и вектор b, для задач на нахождение опреде-

 

лителя или обратной матрицы — только матрицу A.

11Вектор ~x для задач на решение СЛАУ, матрицу A−1 для задач на обратную матрицу и значение |A| для задач на нахождение определителя.

12

~

~

 

Т.е., невязку ξ = b − A~x для задач на СЛАУ; для задач на обратную матрицу — значение

произведения матриц AA−1. Для задачи на нахождение определителя в качестве проверки будет использоваться результат вычисления определителя по другому методу.

15

Варианты СЛАУ

 

 

−3,8

 

0,8 1,2

 

 

 

 

16,6

 

 

 

 

 

 

 

8

 

 

−9,93x1 + 7,21x2 =

−1,39

1.

0−17,4

 

4,4 3,6A1~x = 035,8A1

 

 

 

 

 

2,21x1 − 9,93x2 + 7,71x3 =

 

1,48

 

@−10,6

 

0,6

5,4

 

 

 

 

@88,2

 

 

 

 

 

 

14.

<>

1,71x2 − 9,93x3 + 8,21x4 =

 

0,48

 

0

−6,2

 

 

3,2 −1,2

 

 

 

0

−2,2

 

 

 

 

1,21x3

9,93x4 + 8,71x5 =

0,85

2.

−24,6

 

11,6

−3,6

 

~x =

−10,6

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0,71x4 − 9,93x5 + 9,21x6 =

−2,22

 

 

15,4 5,4

0,6 A1

 

 

 

 

 

5,4 A1

 

 

>

 

@1,00

 

1,50

2,25

 

 

 

@10,5

 

 

 

 

 

 

 

0,21x5 − 9,93x6 =

−24,36

 

 

 

 

 

 

 

 

 

:8

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

−16,41x1 + 9,20x2 = −6,88

3.

0−3,00

 

4,00

2,00 ~x = 010,0

 

 

 

 

 

 

 

 

−6,00

 

2,00

7,00A1

 

 

 

 

2,0 A1

 

 

 

 

6,20x1 − 16,41x2 + 10,20x3 =

 

 

1,79

4.

@6,00

−4,75

5,25

 

 

@70,75

 

 

 

 

5,20x2 − 16,41x3 + 11,20x4 =

 

 

3,25

02,00

 

0,75

0,75

 

~x = 023,25

 

 

 

<>4,20x3 − 16,41x4 + 12,20x5 =

 

 

3,69

 

@

0,67

0,42

2,25A1

 

@

16,44A1

 

15.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

−40,0

 

 

3,20x4 − 16,41x5 + 13,20x6 =

 

 

1,93

5.

 

23,0

−18,0 −12,0

 

~x = 0

 

 

 

2,20x

16,41x + 14,20x =

2,40

016,2

12,4

8,4

 

 

26,4

 

 

 

 

5

6

7

 

 

 

7,8

 

 

 

6,6

 

 

2,6 A1

 

@

13,6A1

 

 

1,20x6 − 16,41x7 + 15,20x8 = −8,01

 

@3 5

3

 

64

 

 

 

 

 

 

>

 

 

 

0,20x7 − 16,41x8 =

 

 

4,11

6.

01 11

 

5

~x = 0 84

 

 

 

 

 

 

 

 

 

 

 

 

 

2x1 x2 =

2

 

 

 

 

@1 13

 

 

 

@100A1

 

 

 

 

 

 

 

 

 

 

:

 

 

 

 

 

 

 

−5A1

 

 

 

 

 

 

−19,66

16.

<>8

x1 + 2x2 x3 =

2

 

 

 

 

 

−4,17

 

 

2,00

0,17

 

 

 

 

 

 

 

>8

x2 + 2x3 x4 =

2

 

 

 

7.

0−41,17

 

 

14,00

1,17

 

~x = 0−209,66

 

 

 

x

+ 2x =

17

 

 

 

 

 

7,17

 

 

2,00 3,17A1

 

 

 

 

13,66 A1

 

 

 

3

4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

: 2,0x1 − 0,5x3 + 0,5x5 =

 

 

 

 

@5,67

−0,00

−0,67

 

 

 

@56,03

 

 

0,0

8.

04,13

 

5,80

−4,53

 

~x = 0123,77

 

 

 

5,3x2 + 1,3x4 − 2,7x6 =

29,4

 

 

3,87

 

1,20

0,53 A1

 

 

 

 

57,23 A1

 

 

−8,0x1 + 5,0x3 + 5,0x5 =

−8,0

 

@ 0,84

 

 

 

 

 

 

 

 

 

@14,4

 

 

17.

<>

 

 

0,64

0,24

 

 

 

 

 

 

 

−2,7x2 + 9,3x4 − 2,7x6 =

5,4

9.

0−7,40

 

3,60

3,60A1

~x = 0−60,0A1

 

 

 

−8,0x1 + 4,0x3 + 6,0x5 = −12,0

 

@−7,04

 

0,16

6,56

 

 

@−70,4

 

 

 

> −2,7x2 + 1,3x4 + 5,3x6 = −34,6

 

 

16,1250

 

 

1,0000

 

−9,7500

 

 

 

 

 

 

 

56,75

:

 

 

 

 

 

 

 

 

10.

0 8,4375

 

 

7,5000

 

−10,1250

 

 

~x = 038,625

 

 

 

 

 

 

 

 

 

 

@

6,1875

 

 

1,5000

 

−2,6250 A1

 

 

 

@25,125A1

 

 

 

 

 

 

 

 

 

 

2,57

 

−2,57 3,29 0,14

 

 

 

 

 

 

 

4,87

 

 

 

 

 

 

 

 

 

11.

B0

0,00

 

−1,00

4,00

 

0,001~x = B0

9,00 1

 

 

 

 

 

 

 

 

 

 

−1,00 −4,00

8,00

 

1,00

 

 

 

 

 

 

 

12,00

 

 

 

 

 

 

 

 

 

 

@−0,29 −7,71 4,86 6,43AC

 

 

 

@−2,41AC

 

 

 

 

 

 

 

 

 

 

5,25

−2,75

3,25

 

−0,50

 

 

 

 

 

 

 

15,00

 

 

 

 

 

 

 

 

 

12.

B01,00

 

2,00

3,00

 

−2,001~x = B0

2,00 1

 

 

 

 

 

 

 

 

 

 

2,75

 

1,75

6,75

 

−5,50

 

 

 

 

 

 

@

−11,00

 

 

 

 

 

 

 

 

 

 

@0,00

−4,00

2,00

 

5,00 AC

 

 

 

21,00 AC

0 3,2

 

 

 

 

 

 

 

0 1,4

 

−0,5

2,0

 

−0,3 −0,6

 

0,8

1

 

1

 

 

 

 

 

 

0,0

 

2,0

0,0

 

0,0

 

 

 

 

0,0

 

0,0

 

 

4,0

 

 

 

 

13.

 

−3,4

 

−2,0

6,3

 

−1,0

 

 

 

0,3

 

3,0

~x =

 

1,9

 

 

 

 

 

 

1,3

 

−3,0 −0,9

 

5,0

 

 

−0,9

 

0,5

 

 

 

−5,1

 

 

 

 

 

 

@

−1,0

 

1,0

1,5

 

0,5

 

 

 

 

2,5

 

−1,7

 

@

0,8

 

 

 

 

 

 

 

B−0,8

 

−2,4

1,4

 

0,3

 

 

−1,1

 

4,1 AC

 

B−0,1AC

 

 

 

 

16

5.2Итерационные методы решения СЛАУ

Постановка задачи, этапы выполнения, требования к оформлению и контрольные примеры — такие же, как в предыдущем пункте.

Дополнительное требование: вывести на экран количество итера-

ций.

Критерий выхода из итерационного цикла: ~x(k+1)

ε = 10−4.

− ~x(k) c < ε, где

Методы решения:

1.Метод Якоби

2.Метод Зейделя

3.Метод релаксаций

5.3Алгебраическая проблема собственных значений

Необходимо найти λ и ~x, удовлетворяющие условию:

~x = λ~x,

где A = a21

a22

. . . a2n ,

~x =

x2

 

 

 

a11

a12

. . . a1n

 

 

x1

 

 

 

 

 

...

 

A

 

.

. . .

 

 

an1

an2

. . . ann

 

 

 

 

 

 

 

 

 

 

xn

 

 

 

 

 

 

 

 

 

Тривиальный случай ~x = 0 не представляет практического интереса. Интерес представляют ненулевые собственные значения λ и соответствующие им собственные вектора ~x (в совокупности называемые парой {λ, ~x}). Уравнение A~x = λ~x часто представляют в виде

( λ )~x = 0, где (

λ

) =

a21

a12

λ . . .

a2n

 

 

 

 

a11 − λ

a12

. . .

a1n

λ

A − E

A − E

a.

a.

. .. . a .

 

 

 

n1

n2

 

nn

 

 

 

 

 

 

 

 

 

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

det(A − λE) = 0

17

Задачи на собственные значения подразделяются на частичную (предполагает нахождение одного или нескольких λ из спектра) и полную (нахождение всего спектра собственных значений).

Рассматриваемые здесь численные методы решения задач на собственные значения подразделяются на две категории

1.Методы, направленные на получение коэффициентов характеристического полинома det(A − λE) и на поиск его корней;

2.Методы, использующие преобразования подобия для приведения исходной матрицы A к треугольному или диагональному виду13.

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

Этапы выполнения:

Ввод данных из текстового файла. Необходимо реализовать процедуру, считывающую из текстового файла данные о задаче14.

Решение. Написать программу, реализующую заданный численный метод.

Проверка. Задав имя файла, содержащего данные о задаче, запустить программу и получить результат. Программа должна выводить на экран исходные данные, считанные из файла, промежуточные результаты15, решение16, номер итерации k, проверку17.

 

Методы решения:

 

 

1.

Метод Данилевского

5.

QR-алгоритм

2.

Метод интерполяции

6.

QR-алгоритм на основе

3.

Метод LU-разложения

 

преобразования Хаусхолдера

7.

QR-алгоритм на основе

 

 

4.

Метод вращения Якоби

 

вращений Гивенса

13Используются следующие свойства: (а) преобразование подобия сохраняет спектр; (б) собственные значения треугольных и диагональных матриц равны элементам, стоящим на главной диагонали.

14Подробнее см. аналогичный пункт раздела 5.1 «Прямые методы для задач линейной ал-

гебры». Для задач на собственные значения вектор-столбец свободных членов ~ не задаётся; b

если же он присутствует в файле данных, то его следует игнорировать

15Для методов первой категории — график характеристического полинома; для методов второй категории — матрицы преобразований (L, U, Q и т.п.)

16Для методов первой категории — выбранную пару {λ(ik),~xi(k)}; для методов второй кате-

~(k)

(k)

(k)

.

гории — полный спектр λ

и все соответствующие собственные вектора ~x1

. . . ~xn

17Для каждой выведенной на экран пары {λ(ik),~xi(k)}, вывести значение величины det(A −

(k)

~(k)

(k)

(k)

.

λi

E) и невязку ξi

= (A − λi

E)~xi

18