Главная страница
Навигация по странице:

  • Порядок выполнения работы Теоретическая часть Основные определения

  • 1.2 Прямые методы 1.Метод Крамера.

  • 2. Метод Гаусса. Этот метод основан на приведении методом исключения системы к треугольному виду (прямой ход )

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

  • Обратная прогонка состоит

  • Метод Якоби

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

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

  • Точки

  • 2) Погрешность численного дифференцирования.

  • 3) Аппроксимирующие формулы для любого порядка точности.

  • 4) Выбор оптимального шага при численном дифференцировании.

  • 5) Улучшение аппроксимации с помощью метода Рунге -Ромберга.

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

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


    Скачать 0.84 Mb.
    НазваниеУчебнометодическое пособие для выполнения лабораторных работ Волгоград, 2019 удк 519. 6(075. 8) Ббк в19я7 Печатается по решению редакционноиздательского совета Волгоградского государственного университета
    АнкорМетодичка по вычислительной математике
    Дата10.05.2023
    Размер0.84 Mb.
    Формат файлаdocx
    Имя файлаМетоды вычислительной математики для решения задач информационно.docx
    ТипУчебно-методическое пособие
    #1120139
    страница5 из 6
    1   2   3   4   5   6

    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:



    Вычитая ,

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



    Формула позволяет по результатам двух расчетов производной с шагом h и шагом ph по одной и той же формуле, имеющей порядок точности k, найти ее уточненное значение с порядком точности k+1. Данный прием называется методом Рунге-Ромберга.

      1. Контрольный пример

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

    i

    0

    1

    2

    3

    4

    5

    x

    0,1

    0,2

    0,3

    0,4

    0,5

    0,6

    y

    3

    5

    6

    3

    -1

    -2

    Уточнить производную в центральных узлах i=2,3.

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

    1.Для аппроксимации производной в узлах i=1,2,3 применяем формулу центральных разностей второго порядка точности с шагом h=0.1:



    Для аппроксимации производной в узлах i=0 и i=5 применяем формулы для крайних узлов таблицы:



    2.Оцениваем величину hопт. С учетом, что и =10-10 имеем hопт 10-3. Согласно таблицы h > hопт, поэтому для уточнения значений производной в узлах 2 и 3, можно применять метод Рунге-Ромберга.

    3.Положим p=2, т.к. при p>2 мы выйдем за пределы таблицы. Для p=2 определяем шаг: h1=2h. Для узлов i=2,3 формула запишется в виде:



    Так как формула второго порядка точности, то k=2. Подставляем и получаем окончательную формулу:



    где yi,h- уточненное значение производной.

    4.Заполняем таблицу

    i

    0

    1

    2

    3

    4

    5

    xi



















    yi




















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

    1.Дайте определение конечной разности.

    2.Что такое правая, левая, центральная разность?

    3. Дайте определение узла и сетки.

    4. Дайте определение погрешности аппроксимации производной.

    5.Что такое порядок точности ( погрешности )?

    6. Напишите порядок точности правой, левой и центральной разности.

    7.В чем суть метода Рунге-Ромберга.

    8. Дайте определение главной части погрешности аппроксимации.

    9. Дайте определение конечной разности для функции двух переменных.
    3. Практические задания

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

    Оценить hопт, полагая, что , а =10-10. Улучшить аппроксимацию в заданных узлах с помощью метода Рунге-Ромберга.

    Написать программу и рассчитать на ЭВМ производную этой функции в заданных узлах.

    2. Вычислить значение производной функции, заданной в таблице заданий №2 в произвольной точке x=x0 аналитически и численно тремя методами (формулы 2.3, 2.4, 2.5) для пяти значений приращения аргумента Δx=1; 0.2; 0.1; 0.01; 0.001. Результаты расчета вывести на экран и распечатать в виде таблицы:

    Δx

    y(x)

    y'(x)







    1

     

     

     

     

     

    0.2

     

     

     

     

     

    0.1

     

     

     

     

     

    0.01

     

     

     

     

     

    0.001

     

     

     

     

     


    ПРИЛОЖЕНИЕ 5

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

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

    Таблица заданий №1



    x

    Табличные значения f(x)

    k




    y

    i=0

    i=1

    i=2

    i=3

    i=4

    i=5




    1.

    x

    y

    0.01

    0.03

    0.02

    0.04

    0.03

    0.03

    0.04

    0.01

    0.05

    0.0

    0.06

    -0.1

    0

    2.

    x

    y

    0.1

    -0.5

    0.2

    -0.2

    0.3

    0

    0.4

    0.1

    0.5

    0.05

    0.6

    0

    5

    3.

    x

    y

    0.05

    0.7

    0.1

    0.5

    0.15

    0.7

    0.2

    0.8

    0.25

    0.9

    0.3

    0.12

    2


    4.

    x

    y

    0.2

    -0.6

    0.4

    -0.5

    0.6

    -0.3

    0.8

    0

    1.0

    0.4

    1.2

    1

    3

    5.

    x

    y

    0.1

    0.8

    0.2

    0.5

    0.3

    0.4

    0.4

    0.5

    0.5

    0.6

    0.6

    0.9

    1

    6.

    x

    y

    0.05

    0.0

    0.1

    0.1

    0.15

    0.0

    0.2

    -0.1

    0.25

    -0.2

    0.3

    0.0

    4

    7.

    x

    y

    0.01

    -0.03

    0.02

    -0.04

    0.03

    -0.03

    0.04

    -0.01

    0.05

    -0.01

    0.06

    -0.1

    0

    8.

    x

    y

    0.1

    0.3

    0.2

    0.2

    0.3

    0

    0.4

    -0.1

    0.5

    -0.05

    0.6

    0

    5

    9.

    x

    y

    0.05

    -0.7

    0.1

    -0.5

    0.15

    -0.7

    0.2

    -0.8

    0.25

    -0.9

    0.3

    -0.12

    2

    10.

    x

    y

    0.2

    0.6

    0.4

    0.5

    0.6

    0.3

    0.8

    0

    1.0

    -0.4

    1.2

    -1

    3

    11.

    x

    y

    0.1

    -0.8

    0.2

    -0.5

    0.3

    -0.4

    0.4

    -0.5

    0.5

    -0.6

    0.6

    -0.9

    1

    12.

    x

    y

    0.05

    0.0

    0.1

    -0.1

    0.15

    0.0

    0.2

    0.1

    0.25

    0.2

    0.3

    0

    4

    13.

    x

    y

    0.1

    0.2

    0.2

    0.3

    0.3

    0.5

    0.4

    0.5

    0.5

    0.2

    0.6

    -0.2

    2

    14.

    x

    y

    0.15

    -0.2

    0.25

    -0.4

    0.3

    -0.6

    0.35

    -0.5

    0.4

    -0.45

    0.45

    -0.44

    1

    15.

    x

    y

    0.5

    0.0

    0.6

    1

    0.7

    0.0

    0.8

    -1

    0.9

    0.0

    1.0

    1

    3

    Таблица заданий №2

    Вар.

    Вид функции

    Вар.

    Вид функции

    1

    x(t)=Ae-at sin(ωt+b)

    14

    y=ctgm (ax)

    2

    x(t)=Aeat cos(ωt+b)

    15

    y(x)=(eax-e-ax)n

    3



    16

    x(t)=tat

    4

    уυ(t)=cos2(at+b)

    17

    y(x)=(ax)sin(bx)

    5

    yυ(t)=sin2(at+b)

    18



    6



    19



    7

    q(t)=(a-btn)n

    20



    8

    y(x)=xncos(ax)

    21

    R(φ)=arccosm(a+bφn)

    9



    22

    r(φ)=csin(aφ+b)

    10



    23

    y(x)=ln(tgn(ax+b))

    11



    24

    vυ(t)=loga(tn+bm)k

    12

    S(φ)=Вcоsn(aφ+b)

    25

    S(φ)=Asinn(aφ+b)

    13

    y=tgax( x/a )

    26

    X(t)=lg(atn+b)
    1   2   3   4   5   6


    написать администратору сайта