- •Информатика
- •Часть II
- •Предисловие
- •Лабораторная работа № 1
- •1.1.3. Некоторые из основных приемов работы в MatLab
- •1.2. Порядок выполнения работы
- •1.3. Контрольные вопросы и задания
- •А равно двум или трём
- •2.1.3. Циклические алгоритмы Для многократного выполнения некоторой последовательности операторов MatLabрасполагает двумя видами циклов:
- •2.1.2. Разветвляющиеся алгоритмы Реализацию программы для этого типа алгоритма рассмотрим на примере. Пусть необходимо вычислить значение следующей функции:
- •Другим оператором ветвления является switch. У него следующий синтаксис
- •2.2. Порядок выполнения работы
- •2.4. Контрольные вопросы и задания
- •3.2. Порядок выполнения работы
- •Контрольные вопросы и задания
- •4.1.3. Интерполяция таблично заданной функции двух независимых переменных
- •4.1.4. Сплайн-интерполяция
- •4.2. Порядок выполнения работы
- •Литература
4.1.4. Сплайн-интерполяция
Функция одной переменной S(x), заданная на отрезке [a, b], называется сплайном порядка p, если она:
На каждом из частичных отрезков
,
i
= 0, 1, …, n-1
заданной степени
,
то есть может быть записана как
.р-1 раз непрерывно дифференцируема на [a, b]. При сплайн-интерполяции интерполируемая функция представляется набором полиномов первой, второй или третьей степени соответственно – своим для каждого из внутренних подотрезков
.
Для реализации одномерной и двумерной сплайн-интерполяции в пакете Mathcad имеются следующие функции:
interp(vs,Mx,My,x) – возвращает значение, найденное сплайн-интерполяцией для заданных параметров vs, Mx, My и x, где Mx и My − матрицы входных данных; vs − выходной вектор функций cspline, pspline или lspline; x − вектор размерности n
1.cspline(Mx,My) – возвращает вектор вторых производных (первый из аргументов в функции interp(vs,Mx,My,x)) по исходным данным Mx (матрица размерности n
1
или n
2)
и My
(матрица
размерности n
1
или n
n)
для кубичного сплайна.pspline(Mx,My) - возвращает вектор вторых производных (первый из аргументов в функции interp(vs,Mx,My,x)) по исходным данным Mx (матрица размерности n
1
или n
2)
и My
(матрица
размерности n
1
или n
n)
для параболического сплайна.lspline(Mx,My) - возвращает вектор вторых производных (первый из аргументов в функции interp(vs,Mx,My,x)) по исходным данным Mx (матрица размерности n
1
или n
2)
и My
(матрица
размерности n*1
или n*n)
для линейного сплайна.
На рис. 4.2 для случая функции одной независимой переменной f(x) показана программа для Mathcad, реализующая кубическую сплайн-интерполяцию, а на рис. 4.3 − соответствующая программа для Mathcad, реализующая кубическую сплайн-интерполяцию для функции двух переменных.
Задаём исходные
данные.
Размерность
векторов X и f должна быть одинаковой.
Формируем
интерполяционный
полином и строим
его график


![]()
![]()


Формируем вектор
вторых
производных
кубического сплайна
Рис. 4.2. Реализация кубической сплайн-интерполяция функции
одной переменной в пакете Mathcad
4.2. Порядок выполнения работы
Выполнить одномерную интерполяцию одной из средних ветвей предложенной преподавателем выходной статической ВАХ с использованием формулы Лагранжа и построить соответствующий график.
Примечание. При построении графиков рекомендуется для уменьшения времени счета предварительно задавать диапазон и шаг изменения переменной по оси абсцисс, а также, при наличии волнистости, использовать по оси ординат логарифмическую шкалу.


Рис. 4.3. Реализация кубической сплайн-интерполяция функции
двух переменных в пакете Mathcad
Выяснить, имеет ли место явление волнистости при выполнении интерполяции, и найти значение из диапазона входных данных, при которых оно проявляется больше всего. Скорректировать исходные данные, добавив в исходные данные узел из области с наибольшим уровнем волнистости и вновь выполнить п.1.
Выполнить одномерную сплайн-интерполяцию (линейную, квадратичную и кубическую) одной из ветвей выходной ВАХ. Сделать сравнительные выводы по результатам пп. 1, 2 и 3. Указать, какая из трех одномерных сплайн-интерполяций (линейная, квадратичная или кубическая) менее всего отличается от интерполируемой зависимости.
Выполнить двумерную сплайн-интерполяцию (линейную, квадратичную и кубическую) для выходной ВАХ. Сделать сравнительные выводы по результатам двумерной сплайн-интерполяции.
Аналогично п.4, выполнить последовательную двумерную сплайн-интерполяцию для входной ВАХ. При выполнении этого пункта проще и разумнее интерполировать не зависимость Ib(Uce, Ube), а зависимость Ube(Uce, Ib).
