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

  • Задание № 2.

  • 2. Приближение функций Задача приближения функций


    Скачать 7.11 Mb.
    Название2. Приближение функций Задача приближения функций
    Дата16.04.2022
    Размер7.11 Mb.
    Формат файлаdoc
    Имя файла2-2.12-1.doc
    ТипЗадача
    #478932
    страница12 из 14
    1   ...   6   7   8   9   10   11   12   13   14

    Пример. Используя интерполяционную формулу Ньютона с конечными разностями для интерполяции вперед и назад, вычислить значения функции при данных значениях аргумента




    0.45

    0.46

    0.47

    0.48

    0.49

    0.50



    20.1946

    19.6133

    18.9425

    18.1746

    17.3010

    16.3123



    0.51

    0.52

    0.53

    0.54

    0.55

    0.56



    15.1984

    13.9484

    12.5508

    10.9937

    9.2647

    7.3510


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





    с точностью














    0.45

    20.1946



















    -0.5813










    0.46

    19.6133




    -0.0895













    -0.6708




    -0.0076




    0.47

    18.9425




    -0.0971




    -0.0010







    -0.7679




    -0.0086




    0.48

    18.1746




    -0.1057




    -0.0008







    -0.8736




    -0.0094




    0.49

    17.3010




    -0.1151




    -0.0007







    -0.9887




    -0.0101




    0.50

    16.3123




    -0.1252




    -0.0008







    -1.1139




    -0.0109




    0.51

    15.1984




    -0.1361




    -0.0006







    -1.2500




    -0.0115




    0.52

    13.9484




    -0.1476




    -0.0004







    -1.3976




    -0.0119




    0.53

    12.5508




    -0.1595




    -0.0005







    -1.5571




    -0.0124




    0.54

    10.9937




    -0.1719




    -0.0004







    -1.7290




    -0.0128




    0.55

    9.2647




    -0.1847













    -1.9137










    0.56

    7.3510














    Аналогично, для Воспользуемся формулой (2.10.2) для интерполяции назад:



    с той же точностью, что и в предыдущей формуле.

    Задание № 2. Вычислить приближенное значение функции по интерполяционной формуле Ньютона для интерполяции вперед или назад.
    I.

    № варианта







    1

    4.413

    4.35

    16.3597

    6

    6.085

    4.60

    17.7334

    11

    5.218

    4.85

    18.7686

    16

    6.480

    5.10

    20.0334

    21

    4.390

    5.35

    22.2846

    26

    6.020

    5.60

    23.5973







    5.85

    25.0811







    6.10

    26.5278







    6.35

    28.3944







    6.60

    29.9902


    II.

    № варианта







    2

    1.210

    1.15

    66.1659

    7

    4.680

    1.55

    63.9989

    12

    2.000

    1.95

    61.9658

    17

    3.870

    2.35

    60.0551

    22

    2.411

    2.75

    58.2558

    27

    3.275

    3.15

    56.5583







    3.55

    54.6807







    3.95

    52.7220







    4.35

    50.5229







    4.75

    48.1091


    III.

    № варианта







    3

    0.105

    0.10

    1.2618

    8

    0.121

    0.16

    1.2764

    13

    0.625

    0.22

    1.2912

    18

    0.438

    0.28

    1.3062

    23

    0.534

    0.34

    1.3213

    28

    0.229

    0.40

    1.3366







    0.46

    1.3521







    0.52

    1.3677







    0.58

    1.3836







    0.64

    1.3995

    IV.

    № варианта







    4

    1.871

    1.350

    4.2556

    9

    1.369

    1.355

    4.3533

    14

    1.382

    1.360

    4.4552

    19

    1.394

    1.365

    4.5618

    24

    1.354

    1.370

    4.6734

    29

    1.362

    1.375

    4.7904







    1.380

    4.9131







    1.385

    5.0419







    1.390

    5.1778







    1.395

    5.3202


    V.

    № варианта







    5

    1.285

    1.20

    10.6044

    10

    1.211

    1.21

    11.3276

    15

    1.272

    1.22

    11.9671

    20

    1.228

    1.23

    12.5324

    25

    1.263

    1.24

    13.0328

    30

    1.237

    1.25

    13.4776







    1.26

    13.8759







    1.27

    14.2367







    1.28

    14.5688







    1.29

    14.8809


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







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

    Получить аналитический вид многочлена можно с помощью меню Symbolics (Символьные выражения) – Simplify (Упростить), набирая по формуле (2.7.1) числовые значения коэффициентов из матрицы :











    В Mathcad длинный оператор, не помещающийся в одну строку на странице, можно перенести в следующую строку, нажав . Это проделано в предыдущем операторе. Аналогично





    Значение функции в требуемой точке вычисляется обращением к соответствующей подпрограмме:





    Эту же задачу можно решить средствами программирования пакета Mathcad. В среде Mathcad потребность в программировании ощущается не только для расширения и совершенствования базового набора математических инструментов, но и в учебных целях. Пакет содержит одиннадцать функций экстраполяции и интерполяции, в частности линейную интерполяцию (linterp) и интерполяцию сплайнами (cspline, pspline, lspline). Полиномиальная интерполяция осуществляется функциями polint и polin2, однако они не являются встроенными и становятся таковыми лишь после подгрузки соответствующего электронного учебника.

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

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





    Здесь и - вектора аргумента и функции, число узлов заданной сетки. После обращения к данной подпрограмме



    м
    ожно еще раз напечатать полученную матрицу, набрав . Эта таблица будет опять точно такой же, как и в первом примере.

    Нахождение коэффициентов функции , включая раскрытие скобок и приведение подобных членов, - задача значительно более трудная. Без сомнения, можно предложить несколько вариантов этой подпрограммы, которые будут длиннее или короче друг друга в зависимости от выбранного алгоритма. Один из вариантов может быть, например, таким:





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

    Можно проверить правильность предыдущих вычислений, набрав

    .

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


    Структура формулы (2.10.1) позволяет при вычислении произведений вида использовать уже готовую функцию . Действительно, и так далее.

    Подпрограмма, реализующая формулу Ньютона для интерполяции вперед, может быть, например, такой:




    П ри написании этой подпрограммы использовались операторы break – выхода из текущего цикла и операции отношения >,<. Операции отношения берутся из панели равенств и отношений (Evaluation and Boolean Palette), которую открывает кнопка .
    Эта панель имеет вид


    Щ елчком по кнопкам этой панели в рабочий документ вставляются соответствующие знаки отношений и т.п.

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

    Введем с клавиатуры





    Таким образом, восстановлен только многочлен третьей степени (по заданной точности ), который имеет вид

    .

    Это многочлен для интерполяции вперед, его можно употреблять для нахождения приближенных значений функции в верхней половине таблицы конечных разностей Например, . Аналогичную формулу для интерполяции назад можно легко получить на основе приведенного материала. Желающие могут проделать это самостоятельно.
    1   ...   6   7   8   9   10   11   12   13   14


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