Материал: Scilab ЛабПрактикум и теория

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

Один из наиболее распространенных вариантов интерполяции интерполяция кубическими сплайнами . Кроме того существуют

квадратичные и линейные сплайны.

В Scilab для построения линейной интерполяции служит функция

y=interpln(z,x),

где z - матрица исходных данных;

x - вектор абсцисс;

y - вектор значений линейного сплайна в точка x.

Рассмотрим пример использования функции interpln().

Пример 2.2.1-2.Используя значения интерполирующей функции, заданной таблично, и выполнить сплайн-интерполяцию с использованием линейных сплайнов и получить значения функции в точке х=0.58.

x

-1

0

1

2

y(x)

4

2

0

1


Рис. 2.2.1-7. Вычисление функции в точке х=0.58

Построение кубического сплайна в Scilab состоит из двух этапов: вначале вычисляются коэффициенты сплайна с помощью функции d=splin(x,y), а затем рассчитывается значения интерполяционного полинома в точке y=interp(t,x,y,d).

Функция d=splin(x,y) имеет следующие параметры:

x - строго возрастающий вектор, состоящий минимум из двух компонент;

y- вектор того же формата, что и x;

d - результат работы функции, т.е. коэффициенты кубического сплайна.

Для функции y=interp(t,x,y,k) параметры x, y и d имеют те же значения, параметр t - это вектор абсцисс, а y - вектор ординат, являющихся значениями кубического сплайна в точках x.

Пример 2.2.1-3. Найти приближенное значение функции при заданном значении аргумента с помощью интерполяции кубическими сплайнами в точках x1 = 0,702, x2 = 0,512, x3 = 0,608.

x

0.43

0.48

0.56

0.62

0.7

0.75

y(x)

1.635

1.732

1.876

2.033

2.228

2.359

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

Рис. 2.2.2-8. Команды построения графиков интерполяционных функций

Рис. 2.2.2-9. График функции, полученной с использованием

кубических сплайнов

2.2.2. Лабораторная работа по теме

«Технология аппроксимации и интерполяции функций»

        1. Вопросы, подлежащие изучению

  1. Постановки задачи аппроксимации и интерполяции функции.

  2. Задание векторов и матриц в пакете Scilab.

  3. Технология аппроксимации функции, заданной таблично, с использованием функций datafit().

  4. Технология линейной, кубической и сплайн-интерполяции таблично заданной функции с использованием функций interpln().

  5. Получение интерполяционных многочленов в явном виде.

  6. Построение графиков аппроксимирующих и интерполирующих функций.

        1. Общее задание

  1. Изучите материал Темы 2.2. (п. 2.2.1).

  2. Выберите индивидуальное задание: номера узлов и номер аппроксимируемой функции из табл. 2.2.2-1; узлы аппроксимации и значения функции в узлах из табл. 2.2.2-2.

  3. Задайте в виде векторов значения узлов и значения функции в выбранных узлах;

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

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

  6. Построите графики табличной и трех аппроксимирующих функций в одном шаблоне, снабдив их легендой.

  7. Проведите линейную и кубическую интерполяцию функции с использованием функции interpln(), заданной таблично. Получите значения интерполирующей функций в точке, не совпадающей с узлами интерполяции, и проанализируйт полученные результаты.

  8. Построите графики табличной и двух интерполирующих функций в одном шаблоне, снабдив их легендой.

  9. Предоставьте результаты работы преподавателю, ответить на поставленные вопросы.

  10. Оформите отчет по выполненной работе.

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

Таблица 2.2.2-1

Вариант №

Номера узлов xi

Номер функции

1

1 3 5 7 9 10 13

2

1 2 4 5 7 10 12

3

1 3 6 7 10 11 13

4

1 2 4 7 9 11 13

5

3 6 7 9 10 11 12

6

2 3 6 8 9 10 13

7

1 4 5 7 9 11 12

8

1 2 4 7 9 12 13

9

2 3 5 7 8 11 12

10

1 3 6 7 9 10 13

11

1 3 7 8 10 11 13

12

1 2 5 6 7 10 12

13

1 4 5 8 10 12 13

14

1 3 5 7 9 10 13

15

1 3 6 7 8 10 13

16

1 4 5 7 9 11 12

17

2 4 5 6 8 12 13

18

1 4 5 7 9 11 12

19

1 4 5 8 10 11 12

20

2 4 5 6 8 12 13

21

1 4 5 810 12 13

22

2 3 6 8 9 10 13

23

1 3 5 8 10 12 13

24

1 4 5 7 9 11 12

25

2 4 5 6 8 12 13

26

3 4 5 7 8 9 12

27

3 5 8 10 11 12 13

28

2 4 7 9 10 11 13

29

2 4 5 7 8 10 12

30

1 4 5 7 9 11 13

Таблица 2.2.2-2

i

xi

1

-5

1.38

2.44

1.676

2

-4.5

1.221

2.359

2.025

3

-4

1.511

1.751

1.736

4

-3.5

1.501

2.13

1.203

5

-3

1

1.455

1.511

6

-2.5

0.728

1.482

1.362

7

-2

0.976

1.437

0.75

8

-1.5

1.065

0.803

0.976

9

-1

0.599

1.175

0.957

10

-0.5

0.192

0.49

0.272

11

0

0.3

0.375

0.3

12

0.5

0.319

-6.51*10-3

0.165

13

1

-0.405

-1.965

-1.185

Источник: https://studfile.net/preview/16689967/