Файл: Учебнометодическое пособие для выполнения лабораторных работ Волгоград, 2019 удк 519. 6(075. 8) Ббк в19я7 Печатается по решению редакционноиздательского совета Волгоградского государственного университета.docx

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 04.12.2023

Просмотров: 155

Скачиваний: 3

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

СОДЕРЖАНИЕ

1. ЦЕЛЬ И ЗАДАЧИ ОСВОЕНИЯ ДИСЦИПЛИНЫ

2. ЛАБОРАТОРНЫЕ РАБОТЫ

2.1 Лабораторная работа 1. «Теория погрешностей и машинная арифметика»

2.2 Лабораторная работа 2. « Решение нелинейных уравнений»

2) Расчетные формулы методов решения нелинейного уравнения .

2.3 Лабораторная работа 3. « Интерполирование функций»

2.4 Лабораторная работа 4.« Решение систем линейных уравнений» Цель: изучение основных численных методов решения систем линейных уравнений; разработка численного алгоритма и решения на ЭВМ систем линейных уравнений методами прогонки и итераций. Порядок выполнения работы Теоретическая часть Основные определения Система уравнений вида: или в сокращенной записи:называется линейной алгебраической системой из n уравнений с n-неизвестными xi (i=1,...,n). В матричной форме она записывается следующим образом:г де A - квадратная матрица, В и Х - векторы столбцы вида:1.2 Прямые методы1.Метод Крамера.Метод Крамера основан на использовании определителей в решении систем линейных уравнений. Это значительно ускоряет процесс решения. Метод Крамера может быть использован в решении системы стольких линейных уравнений, сколько в каждом уравнении неизвестных. Если определитель системы не равен нулю, то метод Крамера может быть использован в решении, если же равен нулю, то не может. Кроме того, метод Крамера может быть использован в решении систем линейных уравнений, имеющих единственное решение.Решение системы имеет вид:xi* = DAi / DA, i = 1, n, 1 2. Метод Гаусса. Этот метод основан на приведении методом исключения системы к треугольному виду (прямой ход ), а затем решение этой системы начиная с xn и т.д. (обратный ход). Если система сразу сводится к диагональному виду, то такой метод называется методом Жордана-Гаусса. Для уменьшения погрешности округления при сведении матрицы А к треугольному виду выбирается максимальный элемент в столбце или в строке и с помощью перестановок он делается главным (схема частичного выбора). Если главный элемент выбирается во всей матрице, то схема носит название глобального выбора. Алгоритм решения системы из n уравнений методом Гаусса с выбором главного элемента по столбцам выглядит следующим образом. Алгоритм прямого хода: Шаг 1. Примем k=1 Шаг 2. Выбираем рабочую строку.Если akk ≠ 0, то k-ая строка – рабочая.Если нет, меняем k-ю строку на m-ю (n≥m>k), в которой amk ≠ 0, . Если такой строки нет, система вырожденная, решение прекратить. Ш аг 3. Для строк i=k+1, k+2, …, n вычисляются новые значения коэффициентов: и новые правые части Шаг 4. Увеличиваем k = k + 1. Если k = n, прямой ход завершен, иначе алгоритм повторяется со второго шага. Получаем верхнюю треугольную матрицу А:А лгоритм обратного хода: Шаг 1. ВычислимШ аг 2. Вычислим:3.Метод прогонки. Данный метод применяется для решения трех диагональных систем. Метод состоит из двух этапов прямой прогонки - и обратной прогонки.Прямая прогонка: величину xi выразим через xi+1 с помощью коэффициентов Ai,Bi : xi= Ai xi+1+ Bi. Из первого уравнения находим значения A1 и B1. Подставляя x1=A1·x2+B1 во второе уравнение системы получаем: a2(A1x2+B1)+b2x2+c2x3=d2. Выражаем x2 и находим A2 и B2,т.е. зная A1 и B1 по этой формуле мы можем вычислить A2 и B2. Аналогично подставляя значение xi-1=Ai-1xi+Bi-1 в i уравнение имеем: ai(Ai-1xi+Bi-1)+bixi+cixi+1=di, i=1,2,...n. После n шагов получим значения An и Bn. Так как cn=0, то An=0. Следовательно, имеем: xn=Bn. Обратная прогонка состоит в последовательных вычислениях значений xn-1, xn-2 и т.д. до x1. 1.3 Итерационные методы:а) метод простой интерполяции (Метод Якоби);б) метод Гаусса-Зейделя Эти методы используются обычно при решении уравнений большого порядка, поскольку при итерационном процессе не накапливается ошибка округления. Задается некоторое приближенное решение x(0), затем производится цикл вычислений ( итераций ) и вычисляется новое приближение x(1). Процесс продолжается до получения решения с заданной точностью. Формула итерационного процесса:Условия завершения итерационного процесса d£e: Условие сходимости итерационного процесса:2. Контрольные вопросы Напишите матричную форму записи системы линейных уравнений. Перечислите основные прямые методы решения системы линейных уравнений. Напишите формулы Крамера. В чем суть метода Гаусса? В чем суть метода прогонки? Перечислите основные итерационные методы решения системы линейных уравнений. В чем суть итерационного метода? Напишите формулу итерационного процесса и условие завершения итерационного процесса. Практические задания 1.Решить систему линейных алгебраических уравнений, коэффициенты которой приведены в таблице заданий методами Крамера, Гаусса, прогонки, итерационным методом. Предварительно систему привести к трех диагональному виду. 2. Показать, что используемый метод имеет единственное решение в случае использования прямого метода или сходится в случае итерационного метода. 3. Написать программу и решить на ЭВМ с помощью этих методов систему уравнений и сравнить результаты. 4. Результаты занести в таблицу: Метод x1 x2 x3 x4 Крамера Гаусса Прогонки Гаусса-Зейделя ПРИЛОЖЕНИЕ 4ВАРИАНТЫ ДЛЯ ВЫПОЛНЕНИЯ ИНДИВИДУАЛЬНЫХ ЗАДАНИЙ

2.6 Лабораторная работа 6. «Методы численного интегрирования функций»

Рекомендуемая литература



ПРИЛОЖЕНИЕ 3

ВАРИАНТЫ ДЛЯ ВЫПОЛНЕНИЯ ИНДИВИДУАЛЬНЫХ ЗАДАНИЙ

№ п/п

Функция

Интервал

1



0;1

2



0;1

3

cos(x2)

0;0.5

4

tg(x3)

0;0.5

5

arctg( )

1;11

6

ln(sin(x))

π/4; 3π/4

7

cos(ex)

1;2

8

tg

0;2

9



0;1

10

sin(ln(x))

0.1;1.1

11



0;2

12

sin x2

0;1

13

ln

1;2

14



π/4; 5π/4

15

arcsin

0;0.5




2.4 Лабораторная работа 4.« Решение систем линейных уравнений»


Цель: изучение основных численных методов решения систем линейных уравнений; разработка численного алгоритма и решения на ЭВМ систем линейных уравнений методами прогонки и итераций.

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

  1. Теоретическая часть

    1. Основные определения

Система уравнений вида:



или в сокращенной записи:

называется линейной алгебраической системой из n уравнений с n-неизвестными xi (i=1,...,n).

В матричной форме она записывается следующим образом:

г де A - квадратная матрица, В и Х - векторы столбцы вида:

1.2 Прямые методы

1.Метод Крамера.

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

Решение системы имеет вид:xi* = DAi / DA, i = 1, n, 1

2. Метод Гаусса.

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

Если система сразу сводится к диагональному виду, то такой метод называется методом Жордана-Гаусса.

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

Алгоритм решения системы из n уравнений методом Гаусса с выбором главного элемента по столбцам выглядит следующим образом.

Алгоритм прямого хода:

Шаг 1. Примем k=1

Шаг 2. Выбираем рабочую строку.

Если akk ≠ 0, то k-ая строка – рабочая.

Если нет, меняем k-ю строку на m-ю (n≥m>k), в которой amk ≠ 0, . Если такой строки нет, система вырожденная, решение прекратить.

Ш аг 3. Для строк i=k+1, k+2, …, n вычисляются новые значения коэффициентов:



и новые правые части

Шаг 4. Увеличиваем k = k + 1. Если k = n, прямой ход завершен, иначе алгоритм повторяется со второго шага.

Получаем верхнюю треугольную матрицу А:

А лгоритм обратного хода:

Шаг 1. Вычислим

Ш аг 2. Вычислим:
3.Метод прогонки.

Данный метод применяется для решения трех диагональных систем. Метод состоит из двух этапов прямой прогонки - и обратной прогонки.

Прямая прогонка: величину xi выразим через xi+1 с помощью коэффициентов Ai,Bi : xi= Ai xi+1+ Bi. Из первого уравнения находим значения A1 и B1. Подставляя x1=A1·x2+B1 во второе уравнение системы получаем: a2(A1x2+B1)+b2x2+c2x3=d2. Выражаем x2 и находим A2 и B2,

т.е. зная A1 и B1 по этой формуле мы можем вычислить A2 и B2. Аналогично подставляя значение xi-1=Ai-1xi+Bi-1 в i уравнение имеем:

ai(Ai-1xi+Bi-1)+bixi+cixi+1=di, i=1,2,...n.

После n шагов получим значения An и Bn. Так как cn=0, то An=0. Следовательно, имеем: xn=Bn.

Обратная прогонка состоит в последовательных вычислениях значений xn-1, xn-2 и т.д. до x1.
1.3 Итерационные методы:

а) метод простой интерполяции (Метод Якоби);

б) метод Гаусса-Зейделя




Эти методы используются обычно при решении уравнений большого порядка, поскольку при итерационном процессе не накапливается ошибка округления. Задается некоторое приближенное решение x(0), затем производится цикл вычислений ( итераций ) и вычисляется новое приближение x(1). Процесс продолжается до получения решения с заданной точностью.




Формула итерационного процесса:


Условия завершения итерационного процесса d£e:








Условие сходимости итерационного процесса:

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

  1. Напишите матричную форму записи системы линейных уравнений.

  2. Перечислите основные прямые методы решения системы линейных уравнений.

  3. Напишите формулы Крамера.

  4. В чем суть метода Гаусса?

  5. В чем суть метода прогонки?

  6. Перечислите основные итерационные методы решения системы линейных уравнений.

  7. В чем суть итерационного метода?

  8. Напишите формулу итерационного процесса и условие завершения итерационного процесса.




  1. Практические задания

1.Решить систему линейных алгебраических уравнений, коэффициенты которой приведены в таблице заданий методами Крамера, Гаусса, прогонки, итерационным методом. Предварительно систему привести к трех диагональному виду.

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

3. Написать программу и решить на ЭВМ с помощью этих методов систему уравнений и сравнить результаты.

4. Результаты занести в таблицу:

Метод







x1







x2







x3







x4




Крамера













Гаусса
















Прогонки
















Гаусса-Зейделя
















ПРИЛОЖЕНИЕ 4

ВАРИАНТЫ ДЛЯ ВЫПОЛНЕНИЯ ИНДИВИДУАЛЬНЫХ ЗАДАНИЙ












Матрица системы







Правая часть




1

0.401

-0.029

0.000

0.000




0.301

-0.500

-0.050

0.000




0.000

-0.018

-1.400

-0.007




0.000

0.000

-0.039

-2.300




0.122

-0.253

-0.988

-2.082




2

-1.700

0.002

0.000

0.000




0.003

0.800

-0.002

0.000




0.000

0.001

-0.100

-0.003




0.000

0.000

0.030

-1.600




0.681

0.480

-0.802

-1.007




3

-3.000

-0.011

0.000

0.000




0.001

2.100

0.005

0.000




0.000

0.5200

1.200

-0.010




0.000

0.000

0.600

-0.300




1.514

1.478

1.083

-1.007




4

4.300

0.100

0.000

0.000




0.217

-3.400

0.090

0.000




0.000

-0.207

2.500

0.080







0.000

0.000

0.197

-1.600

2.663

2.778

2.533

1.928

5

-5.600

0.147

0.000

0.000







0.268

4.700

-0.150

0.000

0.000

0.271

-3.800

0.153









0.000

0.000

0.274

2.900

4.032

4.313

4.235

3.797

6

6.900

0.191

0.000

0.000




0.319

-6.000

-0.205

0.000




0.000

-4.040

5.100

0.020










0.000

0.000

0.000

4.200







5.664

6.112

6.201

5.937




7

-8.200

0.234

0.000

0.000




0.370

7.300

0.260

0.000




0.000

5.600

-0.340

0.268




0.000

0.000

-0.422

5.500







7.559

8.175

8.421

8.322

8

9.500

0.278

0.000

0.000







0.422

8.601

0.315

0.000

0.000

0.459

7.700

0.351










0.000

0.000

0.496

6.803

9.719

10.500

10.915

10.978

9

10.800

0.321

0.000

0.000




-0.5760

9.900

0.369

0.000




0.000

7.300

9.000

0.416










0.000

0.000

-6.060

8.100

12.143

13.089

13.674

13.897

10

-1.100

0.365

0.000

0.000

0.528

0.113

-0.423

0.000




0.000

0.536

1.031

0.481




0.000

0.000

0.534

-0.570

14.830

15.941

16.969

17.081




11

13.400

-0.408

0.000

0.000



0.581

12.500

0.477

0.000




0.000

-0.650

-11.600

0.546



0.000

0.000

0.781

10.700






17.782

19.593

19.974

20.528

12

30.300

0.975

0.000

0.000




0.153

-29.400

0.117

0.000




0.000

0.011

-2.500

10.700










0.000

0.000

1.660

27.600

80.168

83.578

86.609

89.278

13

0.161

0.109

0.000

0.000




0.332

-0.301

-0.060

0.000




0.000

-0.150

0.171

0.145




0.000

0.000

0.051

-0.298







86.814

90.358

19.861

93.502

14

22.500

0.714

0.000

0.000

-


-0.956

21.600

0.855

0.000




0.000

0.109

20.714

-0.996










0.000

0.000

0.124

19.800

45.802

48.261

50.343

52.4

15

26.400

0.840

0.000

0.000

0.117

-25.513

0.105

0.000




0.000

0.198

24.600

0.000

0.000

0.000

-8.810

2.451







61.853

64.730

63.880

59.376



2.5 Лабораторная работа 5. «Аппроксимация производных конечными разностями».

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

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

  1. Теоретическая часть

    1. Основные определения

1) Аппроксимация производных конечными разностями. Производной функции y=f(x) называется предел:



Для приближенного вычисления производной используется формула:

, где x - некоторое конечное число.

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

Пусть известны значения функции y0,y1,...,yi,...,yn, вычисленные или заданные таблицей в точках x0,x1,...,xi,...,xn. Точки x0,x1,...,xi,...,xn называются узлами, а разность между соседними значениями аргумента называется шагом hi=xi=xi-xi-1, i=1,...,n. Весь набор узлов называется сеткой. Если величина шага между узлами постоянна, то говорят, что узлы x0,x1,...,xi,...,xn образуют равномерную сеткой с шагом h.

Для вычисления производной yi в точке точки xi можно использовать левую разность:



правую разность:



центральную разность:


2) Погрешность численного дифференцирования. При численном дифференцировании с использованием приближенной формулы, естественно возникает погрешность: R(x,h)=y(x)-yh(x,h), где y(x) - точное значение производной, yh(x,h)- значение производной вычисленное по приближенной формуле при шаге h.

Величина погрешности зависит от точки x, в которой вычисляется производная, и от шага h, чем меньше шаг, тем естественно погрешность меньше. Обычно погрешность R(x,h) записывают одним из способов:




где, (x)hk- называется главной частью погрешности аппроксимации, т.к. в формуле это слагаемое при h<<1 будет гораздо больше второго, а величина k называется порядком погрешности или порядком точности аппроксимации относительно шага h.

С помощью разложения в ряд Тейлора получены следующие оценки погрешности для формул:

левая разность;

правая разность;

центральная разность.

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

3) Аппроксимирующие формулы для любого порядка точности. Аппроксимацию производных конечными разностями в общем случае можно рассматривать как замену производной от функции y=f(x) производной от аппроксимирующей функции (x), (x)f(x), где в качестве аппроксимирующей функции используется интерполяционный многочлен: . Поэтому увеличивая степень интерполяционного многочлена n мы будем увеличивать порядок точности аппроксимации производной.

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



где, y(k)() - значение “к”-той производной в некоторой точке на отрезке [xi-2,xi+2].

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


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




где y - абсолютная предельная погрешность вычислений значений функции y из-за ошибок округления.

Так как величина y является неустранимой погрешностью, то согласно определения абсолютного числа обусловленности  для задачи численного дифференцирования имеем: =1/h, т.е. задача плохо обусловлена, т.к. при при h0 число обусловленности стремится к бесконечности.

Полная абсолютная погрешность вычисления производной R(yi) будет равна сумме погрешностей:



Первое слагаемое (погрешность вычислений) при уменьшении шага увеличивается, а второе слагаемое (погрешность самой формулы) уменьшается. Естественно будет такой шаг при котором полная погрешность будет минимальной., такой шаг называется оптимальным,

Оптимальный шаг hопт определяется из условия минимума R(yi), т.е. уравнения Rh(yi)=0, где значок h - говорит о том, что производная берется по h.

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

Если величина абсолютной предельной погрешности вычислений значений y определяется погрешностью округления ( машинным эпсилон ) (y)= y, то можем записать:



Обычно на практике полагают, что .

5) Улучшение аппроксимации с помощью метода Рунге -Ромберга. Пусть y(x) - точное значение производной, а yh(x,h) -значение производной, вычисляемое по формуле численного дифференцирования, имеющей порядок точности к относительно шага h. Следовательно можем записать:



Запишем это же соотношение для шага h1=ph:



Вычитая ,

и подставляя, получаем