КАТЕГОРИИ:
АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника
|
Специальная форма записи сплайна.Рассмотрим отрезок . Введем следующие обозначения переменных:
Здесь - длина отрезка , , - вспомогательные переменные, x – промежуточная точка на отрезке . Когда x пробегает все значения на интервале , переменная изменяется от 0 до 1, а изменяется от 1 до 0. Пусть кубический многочлен на отрезке имеет вид:
Номер сплайна совпадает с индексом конечной точки отрезка . Для записи сплайна на соседнем i-ом участке достаточно в (8) уменьшить все индексы на единицу:
Переменные и определяются применительно к конкретному отрезку интерполяции. Найдем значение сплайна на концах отрезка . Точка является начальной для отрезка , поэтому =0, =1 и в соответствии с (3.8): . На конце отрезка =1, =0 и . Для интервала точка является конечной, поэтому =1, =0 и из формулы (9) получаем: . Таким образом, выполняется условие непрерывности функции S(x) в узлах стыковки кубических многочленов независимо от выбора чисел di . Для определения коэффициентов di , i=0,…n продифференцируем (8) дважды как сложную функцию от x. Тогда
где
Уменьшая в (10) индекс i на единицу, получим:
Определим вторые производные сплайна и :
Для многочлена точка является началом отрезка интерполяции и =0, =1, поэтому
Для сплайна точка является концом отрезка интерполяции и =1, =0. Отсюда
Из (15) и (16) следует, что на отрезке [a,b]сплайн-функция, «склеенная» из кусков многочленов 3-го порядка, имеет непрерывную производную 2-го порядка. Чтобы получить непрерывность первой производной функции S(x), потребуем во внутренних узлах интерполяции выполнения условия: Определим (10) и (12) в точке : Приравнивая полученные выражения, приходим к системе уравнений:
Для естественного кубического сплайна , следовательно, система уравнений будет иметь вид:
Решаемая система уравнений является линейной, а ее матрица трехдиагональной, симметричной. Такая матрица является невырожденной, и коэффициенты определяются из системы (18) однозначно. Если же требуется найти S(x) с краевыми условиями (3.5), то это приведет к дополнительным условиям: и система уравнений (17) будет иметь вид:
Для краевых условий (6) получим:
и система уравнений (17) будет иметь вид:
Исходные данные:
Заменить функцию интерполяционным кубическим сплайном, значения которого в заданных узловых точках (см. табл.) совпадают со значениями функции в этих же точках. Рассмотреть разные краевые условия. 1. Рассчитаем значение функции в узловых точках. Для этого подставим в заданную функцию значения из таблицы. 2. Для разных краевых условий (4), (5), (6) найдем коэффициенты кубических сплайнов. 2.1. Рассмотрим первые краевые условия. В нашем случае n=3, , , . Чтобы найти используем систему уравнений (3.18): Вычислим и , используя формулы (7) и (11):
Подставим полученные значения в систему уравнений: . Решение системы: С учетом первых краевых условий коэффициенты сплайна: 2.2. Рассмотрим определение коэффициентов сплайна с учетом краевых условий (3.5): Для n=3 система уравнений (19) примет вид:
Найдем производную функции : Вычислим и :
Подставим в систему уравнений (21) значения и : Решение системы уравнений: 2.3. Рассмотрим третьи краевые условия (6). Используя формулу (20) определим d0 и d3: Найдем вторую производную функции : Вычислим и : и Система уравнений (21)для определения , : С учетом конкретных значений: и вектор коэффициентов: 3. Рассчитаем значения кубического сплайна S(x) в серединах отрезков интерполяции. Середины отрезков: Для вычисления значения кубического сплайна в серединах отрезков интерполяции воспользуемся формулами (7) и (9). 3.1. Найдем и : В формулу (3.9) подставляем коэффициенты , для краевых условий (4), (5), (6): 3.2. Найдем и : В формулу (9) подставляем коэффициенты , для краевых условий (4), (5), (6): 3.3. Найдем и : В формулу (9) подставляем коэффициенты , для краевых условий (4), (5), (6):
|