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

Численные методы. Методические указания к выполнению лабораторных работ

.pdf
Скачиваний:
0
Добавлен:
15.08.2026
Размер:
990 Кб
Скачать

Разделив коэффициенты первого уравнения системы (3) на ведущий эле-

мент 22(1) , получим

 

 

 

+ (1)

= (1)

,

(4)

 

 

 

2

23

3

24

 

 

где

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(1)

 

 

 

 

 

 

 

(1)

 

 

2

 

 

 

 

 

 

2

 

=

 

 

 

(j= 3, 4).

 

 

 

 

(1)

 

 

 

 

 

 

 

 

22

 

 

 

 

 

Исключая 2

таким же образом, каким было исключено 1, будем иметь

 

(2) = (2) ,

 

 

(5)

 

 

33

3

 

 

34

 

 

 

где

 

 

 

 

 

 

 

 

 

 

 

 

(2)

 

= (1)

(1)

(1)

( = 3,4) .

 

3

 

 

 

3

 

32

2

 

 

Тогда

(2)

3 = 34(2) = 34(2). (6)

33

Остальные неизвестные определяются из уравнений (4) и (2):

2 = 24(1) 23(1) 3

1 = 14 13 3 12 2 .

Таким образом, процесс решения системы уравнений по методу Гаусса сводится к построению эквивалентной системы (2), (4), (6), имеющей треуголь-

ную матрицу. Необходимым и достаточным условием применимости метода является неравенство нулю всех ведущих элементов. Процесс нахождения ко-

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

лучения значений неизвестных – обратным.

При большом числе неизвестных системы схема метода Гаусса становит-

ся сложной. В этих случаях можно воспользоваться приближенными числен-

ными методами. Рассмотрим один из них.

21

Метод итерации

Пусть дана линейная система

 

+ + + = ,

 

 

11 1

12 2

1

1

 

{

+ + + = ,

(7)

21 1

22 2

2

2

 

− − − − − − − − − − − − − − −

 

 

+ + + = .

 

 

1 1

2 2

 

 

 

Предполагая, что диагональные коэффициенты

 

 

 

 

≠ 0,

( = 1,2, … , ),

 

 

 

 

 

 

 

 

разрешим первое уравнение системы (7) относительно 1, второе – относительно 2, и т. д. В результате получим эквивалентную систему уравнений

 

 

+ + … + ,

 

 

 

 

 

1=

1

 

12

2

13

3

1

 

 

 

 

+ + … + ,

 

 

{

 

 

2=

2

 

21

1

23

3

2

 

(8)

 

− − − − − − − − − − − − − − −

 

 

 

 

 

 

 

+ + … +

 

.

 

 

=

 

 

 

1

1

2

2

 

( −1) −1

 

 

где

 

 

 

 

 

 

 

 

 

 

 

 

 

 

=

 

 

,

 

= −

 

при

i

(i, j=1,2, …, n).

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Вводя в рассмотрение матрицы

 

 

 

 

 

 

 

 

 

 

 

11

12

1

1

 

 

 

 

 

= | 21

22

2 | и = |

|

 

 

 

 

 

 

1

2

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

систему (8), можно записать в матричной форме

 

 

 

 

 

 

 

 

 

 

 

= +

 

 

(9)

Если за нулевое приближение принять столбец свободных членов и подставить его в правую часть уравнения (9), то получим первое приближение

1 = + 0.

Аналогично 2 = + 1. Любое (n + 1) приближение вычисляется по формуле +1 = + . Процесс итерации продолжается до тех пор, пока не будет выполнено условие | +1 − | ≤ .

Блок-схема алгоритма решения систем линейных алгебраических уравнений методом итерации приведена на рис. 12. Исходными данными являются: N – порядок системы, ε – заданная точность расчета; ( , ) – элементы матрицы коэффициентов при неизвестных; ( ) – вектор свободных членов; ( ) – начальное приближение к решению; X( )– рабочий массив.

22

Начало

Ввод

N,E,Y(N)

= 0

a

= 1

( ) = ( )

= 1

д

=

нет

( ) = ( ) − ( , )

= + 1

д

нет

( )

( ) = ( , )

= + 1

д

нет

= 1

нет

|( ) − ( )|

д

= 1

( ) = ( )

= + 1

д

нет

нет

= + 1

a

= + 1

д

нет

Вывод

X(I), S

Конец

Рис.12. Блок - схема алгоритма метода итераций

23

2. Задание

Решить систему линейных уравнений = методом Гаусса.

11 1 + 12 2 + 13 3 = 1 , { 21 1 + 22 2 + 23 3 = 2 ,31 1 + 32 2 + 33 3 = 3 .

3.Порядок выполнения лабораторной работы

1.Изучить свой вариант задания (см. с.27).

2.Разработать блок-схему алгоритма решения задачи.

3.Составить программу решения задачи.

Исходными данными являются:

Порядок уравнения системы ;

Массив коэффициентов при неизвестных ( ; + 1). 4. Составить отчет по лабораторной работе.

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

Блок–схема алгоритма решения систем линейных уравнений приведена на рис.13. Алгоритм состоит из следующих основных этапов.

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

 

11

12

1

1, +1

 

 

21

22

2

2, +1

 

= |

 

 

 

|,

 

 

 

 

 

 

 

1

2

 

, +1

 

где

 

 

 

 

 

 

= ,

= … ,

= .

1, +1

1

2, +1

2,

, +1

 

2.Первая строка матрицы делится на 11, затем умножается на

,1( = 2,3, … , )

и вычитается из к-й строки (последовательно из 2-,3-,…, n-й строк); эле-

менты первого столбца матрицы, начиная с 21 и до 1, становятся нулями:

24

Начало

Ввод n,

A(n,n+1)

Цикл

= 1, − 1

= ,

Цикл

= 1, + 1

, = ,/

Конец цикла по J

Цикл

= + 1,

Цикл

= 1, + 1

, = , , ,

Конец цикла по L

Конец цикла по K

Конец цикла по I

= , +1/,

Цикл

= − 1, − 1

= 0

Цикл

= + 1,

= + ,

Конец цикла по J

= , +1

Конец цикла по K

Вывод ( )

Конец

Рис.13. Блок - схема алгоритма метода Гаусса

25

 

1

12

1

1, +1

 

1

0

22

2

2, +1

 

= |

 

 

 

 

| ,

 

 

 

2

 

 

 

 

 

 

 

, +1

 

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

3.Вторая строка матрицы 1 делится на 22, затем умножается на 2 и

вычитается из всех строк = 3,4, … , .

4.Действия, аналогичные перечисленным в п.3, повторяются до тех пор,

пока подобная процедура не будет проделана с (n-i)-й строкой матрицы; матри-

ца будет приведена к виду

1

12 13

1

1, +1

 

0

1 23

2

2, +1

 

−1 =

 

.

| 0

0

0

1

 

 

−1, +1

|

 

 

 

 

−1,

 

 

0

0

0

0

 

 

 

 

 

 

 

,

 

, +1

 

5. Элементы последней строки полученной матрицы позволяют вычис-

лить значение

= , +1.

,

6. Значение корня используется для отыскания

 

при подстановке

 

 

 

 

 

 

 

 

−1

 

в (n-i)-ю строку треугольной матрицы

 

−1

,

а затем вычисляются остальные

 

 

 

 

 

 

 

 

 

корни

, … , по формуле

 

 

 

 

 

 

 

 

−2

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

=

 

.

 

 

 

 

, +1

 

 

 

 

 

 

 

= +1

4.Контрольные вопросы

1.Объяснить последовательность вычисления корней методом Гаусса.

2.Назвать необходимые и достаточные условия применимости метода Гаусса.

3.Какие этапы называются прямым и обратным ходом решения?

4.В чем заключается преимущество метода Гаусса перед методом итера-

ции?

5.Объяснить последовательность вычисления корней методом итерации.

26

6.Объяснить сущность метода Гаусса с выбором главного элемента.

7.Как производится оценка погрешности в методе итерации?

8.Написать формулу первого приближения методом итераций.

9.Написать формулу вычисления корня методом Гаусса.

27

 

 

 

 

5.

Варианты заданий

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Матрица

 

Вектор

 

 

Матрица

 

Вектор

вари-

коэффициентов

 

 

вари-

коэффициентов

 

B

 

B

анта

 

 

A

 

 

 

анта

 

 

A

 

 

 

 

 

 

 

 

 

 

 

1

 

 

2

 

 

3

 

4

 

 

5

 

6

 

9

5

4

7

 

0

 

 

2

1

5

2

1

1

4

6

8

7

 

6

 

8

5

2

2

6

3

 

 

 

 

 

 

 

 

 

 

 

 

 

5

8

7

6

 

3

 

 

2

2

1

2

0

 

5

6

8

7

 

7

 

 

1

3

3

1

2

 

9

5

3

8

 

3

 

 

7

6

2

7

3

2

4

6

7

4

 

8

 

9

4

9

5

5

2

 

 

 

 

 

 

 

 

 

 

 

 

 

2

3

5

3

 

1

 

 

2

3

4

9

0

 

4

8

3

7

 

7

 

 

1

5

6

9

2

 

1

4

2

5

 

3

 

 

3

6

5

7

3

 

4

4

5

3

 

8

 

 

4

6

3

5

0

3

1

2

6

8

 

1

 

10

2

3

2

6

4

 

 

 

 

 

3

7

3

2

 

7

 

 

2

4

3

6

3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

3

5

2

 

3

 

 

9

5

4

7

0

 

5

2

7

5

 

2

 

 

4

6

8

7

6

4

4

2

1

7

 

3

 

11

5

8

7

6

3

 

 

 

 

 

7

5

4

1

 

2

 

 

5

6

8

7

7

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

9

6

3

8

 

3

 

 

9

6

3

8

3

 

4

6

7

4

 

1

 

 

4

6

7

4

1

5

2

3

5

3

 

4

 

12

2

3

5

3

4

 

 

 

 

 

4

8

3

7

 

2

 

 

4

8

3

7

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

4

7

4

 

2

 

 

2

3

5

2

3

 

4

1

6

2

 

0

 

 

5

2

7

5

2

6

8

3

6

7

 

3

 

13

4

2

1

7

3

 

 

 

 

 

6

3

5

7

 

1

 

 

7

5

4

1

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3

3

4

5

 

1

 

 

1

4

2

5

3

 

 

 

 

 

 

 

 

 

 

 

2

6

4

6

 

4

 

 

4

4

5

3

8

7

3

4

5

5

 

0

 

14

1

2

6

8

1

 

 

 

 

 

1

9

3

6

 

3

 

 

3

7

3

2

7

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

28

 

 

 

 

 

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

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

методом Рунге-Кутта

 

 

1. Методические указания к выполнению работы

 

 

 

Пусть дано дифференциальное уравнение

 

 

 

 

= ( , ),

(10)

 

 

удовлетворяющее начальному условию ( 0) = 0. Требуется найти ре-

шение этого уравнения на интервале [

, ]

c заданной точностью. Интервал

 

 

 

0

 

 

 

[

,

] разбивается на n равных частей c помощью точек

 

0

 

 

 

 

 

 

 

 

= + ( = 0,1,2, … ).

 

 

 

 

0

 

 

 

Решение уравнения (10) находится не для всех точек интервала, а лишь для дискретных значений

( = 0,1,2, … , ).

В методе Рунге-Кутта для определения значения функции необходимо

четырежды вычислить производную и результат усреднить. Погрешность этого

метода пропорциональна

5.

 

 

 

 

 

 

 

При этом для каждой точки рассчитываются следующие коэффициенты:

 

 

 

= ∙ ( , );

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

= ∙ ( +

 

, +

1

) ;

 

2

 

 

2

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

= ∙ ( +

 

, +

2

) ;

 

2

 

 

3

 

 

 

2

 

 

 

= ∙ ( + , + ),

 

4

 

 

 

3

 

 

а затем значение функции по формуле

 

 

 

 

= + ( + 2

+ 2

+ )/6.

+1

 

 

1

2

3

4

Эффективная оценка погрешности метода Рунге-Кутта затруднена. По-

этому для проверки правильности выбора шага h используют двойной пересчет значений в каждой точке; один раз с шагом h, другой – с шагом h/2.

29

Если условие

| − /2|

(11)

15

 

 

 

 

выполняется, то шаг h выбран правильно, и переходят к расчету в следу-

ющей точке. В противном случае шаг уменьшается вдвое и расчеты повторя-

ются. В формуле (11): , /2 значения функции, рассчитанные с шагом h и h/2 соответственно.

Блок - схема алгоритма метода Рунге–Кутта приведена на рис.14.

2. Задание

Найти решение дифференциального уравнения в интервале [0, ] с точностью = 10−3.

3.Порядок выполнения лабораторной работы

1.Изучить свой вариант задания (см. с. 30).

2.Разработать блок-схему алгоритма решения задачи.

3.Составить программу решения задачи.

Исходными данными являются:

Начало и конец интервала интегрирования 0, ;

Начальное значение функции 0;

Точность расчета ε; H – шаг интегрирования;

вспомогательный массив (3).

4.Составить отчет по лабораторной работе.

4.Варианты заданий

Номер

Уравнение

у

х0

хn

Варианта

 

 

 

 

1

у' = 1/у + х

1

0

0,5

 

 

 

 

 

2

у' = х + у

1

0

1

 

 

 

 

 

3

у' = 2ху + ху2

0,5

0

0,5

 

 

 

 

 

 

30

 

 

 

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]