§4. Интерполирование по двукратным узлам. Интерполяционные многочлены Эрмита
Допустим, в узлах xi (i = 0,1 ,...,n) заданы не только зна-чения у(xi)=уi , но и первые производные у(xi)= у i. Требу-ется построить полином Н(x) минимально возможной степени, для которого Н( xi) = уi , Н (xi ) = у i (i = 0,1 ,...,n).
Данная задача называется интерполированием по двукратным узлам, поскольку в каждом из них дано два геометрических условия.
Общее число геометрических условий в задаче равно 2n+2. Искомый интерполяционный полином минимально возможного порядка должен иметь степень не выше 2n+1, так как число его неизвестных коэффициентов при каноническом задании (2.5) равно 2n+2.
Полином Н(x) имеет вид:
57
где 1 ; i = j ; 1 ; i = j ;
hi(xj) = H i (xj) =
0 ; j i , 0 j n ; 0 ; j i , 0 j n ;
hi(xj) = 0 ; 0 j n ; Hi (xj) = 0 ; 0 j n .
Рассмотрим функции Нi (x). В узлах xj ( j i , 0 j n ) у них двойные нули: Hi (xj) = Hi(xj) = 0. В узле xi -одинарный нуль: Hi (xi) = 0. Полином минимальной степени, удовлетворяющий этим условиям, имеет вид:
Hi (xi) = С [(х)]2/(x-xi) = C (x -x0)2*( x - x1)2* . . . *( x –
- xi-1)2*(x-xi)*(x - xi+1)2* . . . * (x - xn) 2,
где С – некоторая константа.
Величину С находим из условия H i (xj) = 1. Так как Hi(x) = С[2(х)(х)/(x-xi) - (х)2/(x-xi)2] , то из H i (xj) = С[(xi)]2 = 1 следует: С = 1/[(xi)]2 . Отсюда получаем:
Hi (xi) = [(х) / (xi)]2/(x-xi) = Фi2(х)(x-xi), (2.14)
где Фi(х) - функция Лагранжа.
Перейдём к построению функций hi (x). В узлах xj ( j i , 0 j n ) у них также двойные нули: hi (xj) = hi(xj) = 0. В узле xi – следующие условия: hi (xi) = 1; hi (xi) =0. Для обеспечения условий в узлах xj в hi (x) вносится множитель вида ((х))2/(x-xi)2 . Для выполнения условий в узле xi в hi (x) дополнительно вводится множитель вида (с + d(x-xi)), у которого с и d – некоторые неизвестные константы. Подставляя формулу в условие hi (xi) = 1, получим: с = 1/((xi))2 . Выражение для hi (x) принимает вид: hi (x) =((х))2/(x-xi)2 [1/ ((xi))2 + d(x-xi)].
Производная функции по х :
hi (x) = 2 [(х)/(x-xi)]*[(х)/(x-xi)]x [1/ ((xi))2 + d(x-xi)]+[(х)/(x-xi)]2*d.
С учётом свойств полинома (х) условие hi (xi) =0 можно представить в виде:
58
Отсюда получим:
В итоге искомая функция может быть представлена в следующей форме:
Подставляя найденные выражения (2.14) и (2.15) в об-щую формулу (2.13), получим интерполяционную формулу Эрмита для двукратных узлов:
(2.16 а)
В векторном виде интерполяционную формулу Эрмита представляют в виде скалярного произведения :
Н (x) = (H(x) ,Y ); (2.16 б)
гдеH(x) = (h0 (x), . . . , hn (x), Н0 (x) , . . . ,Н n (x));
Y = ( y0 , y1 , . . . , yn , y0 , y1, . . . , yn ).
Рассмотрим по аналогии с однократными узлами интер-полирование в двукратных при помощи нормированной переменной. Допустим, в граничных точках отрезка [x0,x1]
59
заданы по два геометрических условия: у(x0) = у0 , у(x0) = у0, у(x1) = у1, у (x1) = у1 . Вводя на отрезке [x0,x1] нор-мированную переменную t= (x – x0) / ( x1 - x0 ) и обозначая h = x1 - x0 , представим явное решение для S(t) при помощи кубического интерполяционного многочлена Эрмита по формуле (2.16):
S(t)=у01(t)+у12(t)+h у03 (t)+h у14 (t), (2.17а)
где функции 1 (t); 2 (t); 3 (t); 4 (t) , называемые полиномами Эрмита, обладают следующими свойствами
1 (0) = 1; 1 (1) = 0; 1 (0) = 0; 1 (1) = 0 ;
2 (0) = 0; 2 (1) = 1; 2 (0) = 0; 2 (1) = 0 ;
3 (0) = 0; 3 (1) = 0; 3 (0) = 1; 3 (1) = 0 ;
4 (0) = 0; 4 (1) = 0; 4 (0) = 0; 4 (1) = 1 .
Их можно найти подстановкой в формулу Эрмита либо с применением общих методов, изложенных в § 2:
1 (t) = 3(1-t)2 –2(1-t)3 =1-3t2+2t3 = ((1,0 ,-3, 2),(1,t ,t2,t3)) = ((1,0 ,-3,2),T 3);
2 (t) = 3t2 –2t3 = ((0, 0 ,3 ,-2),T 3);
3 (t) =(1-t)2 – (1-t)3 = t - 2t2+ t3 = ( (0, 1 , -2 ,1),T 3);
4 (t) = - t 2 + t 3 = ( (0, 0 ,-1 ,1),T 3).
Спомощью введённых скалярных произведений вектор значений 1(t) - 4(t) представим как произведение:
Используя расширенный вектор значений Y *=( у0 , у1 , h у0, h у1), многочлен Эрмита можно представить в виде:
S(t)=(Y *, МЭТ 3). (2.17 б)
60
Кубический полином (2.17) обеспечивает в обоих узлах интерполяции не только требуемые значения функции, но и углы наклона касательных.
По аналогии с интерполированием по однократным уз-лам полином Эрмита может быть выражен через разделён-ные разности. Для этого необходимо наряду с обыч-ными разностями, в которых все аргументы отличны друг от друга, рассмотреть случай с повторяющимися аргу-ментами.
Обозначим верхним индексом повторяемость аргумента. Разность порядка 1 с повторяющимся аргументом xi, xi может быть интерпретирована следующим образом:
f(x1i , x2i) =lim f(xi, x i) =f(xi ) / (1!).
x i x i
В общем случае
f(x1i , x2i , . . . , xki ) =f k-1(xi) / (k-1)! .
В случае двукратных узлов необходимо в разделённых разностях повторять дважды каждое значение xi (0 i n ). В результате получим обобщение интерполяционного многочлена Ньютона для двукратных узлов:
HnN(x) = y0 + (x- x0 )f( x0 , x0 ) + (x- x0 )2 f( x0 , x0 , x1 ) + (x- x0)2(x- x1 ) f( x0 , x0 , x1, x1 ) + . . . +(x- x0 )2(x- x1 )2 * . . . * (x- xn-1 )2(x- xn ) f( x0 , x0 , x1, x1 , . . . , xn-1 , xn-1 , xn ,xn ). ( 2.18)
С помощью разделённых разностей можно в явном виде построить полином Эрмита для интерполирования по узлам с различающейся степенью кратности. Допустим, требуется интерполировать узлы xi (0 i n), обладающие, соответственно, кратностями ki (ki 1 ). Будем обозначать верхним индексом при аргументе номер его вхождения в выражение. В этом случае полином Эрмита будет иметь вид:
HnN(x) = y0 + (x- x0 )f( x10 , x20 ) + . . . + (x- x0 )k0 -1 f(x10 , x20 , . . . , x0 k0 ) + (x- x0 )k0 *f(x10 , x20, . . . ,x0k0, x1 )+. . .+ (x- x0 )k0(x-
61
x1 )k1* . . . * (x- xn-1 )k(n-1)(x- xn )kn-1 *f(x10 , x20 , . . . , x0k0, . . . , x1n , x2n , . . . , xnkn ) ( 2.19)
Пример. На множестве двукратных узлов x0 = - 2 ; x1 = 1 ; x2=3 заданы значений функции у(x) и её первой произ-водной у(x ):
у(x0)=у0 =6; у(x1)=у1=2; у(x2) = у2 =3; у(x0)=у0 =-2; у(x1)=у1 =-1; у(x2)= у2 = 1.
Построить на этом множестве узлов :
1) полином Эрмита Н(x) минимально возможной степени,
2) обобщённый многочлен Ньютона.
Решение.
1. Вспомогательный полином (х) и функции Лагранжа
будут следующими : (х)= (x+2)(x-1)(x-3 );
По формулам (2.14),(2.15) строим функции Нi (x) и hi (x).
H0 (x) =(х-1)2(х-3)2(x+2) / 152 ; H1 (x) = (х+2)2(х-3)2(x-1) / 62 ;
H2 (x) =(х+2)2(х-1)2(x-3) / (10)2 ;
По формуле (2.16) многочлен Эрмита принимает вид:
62
Упрощая, получим:
2. Рассчитаем разделённые разности :
1-й порядок:
f(x10, x20) = у0 = - 2;
f(x20, x11) = (у1 - у0)/( x1 - x0 )=(2-6) / (1-(-2)) = - 4/3;
f(x11, x21) = у1 = -1;
f(x21, x12) = (у2 - у1)/( x2 - x1)=1 / 2;
f(x12, x22) = у2 = 1.
2-й порядок:
f(x10, x20, x11) = (-4 / 3 – (-2)) / 3 = 2 / 9 ;
f(x20, x11, x21) = (-1 – (-4/3)) / 3 = 1 / 9;
f(x11 , x21, x12) = ( 1/2 – (-1)) / 2 = 3/4 ;
f(x21, x12, x22) = (1 – 1 / 2) / 2 = 1 / 4 .
3-й порядок:
f(x10, x20, x11, x21) = (1 / 9 – 2 / 9) / 3 = - 1 / 27 ;
f(x20, x11, x21, x12) = (3 / 4 – 1 / 9) / 5 = 23 / 180 ;
f(x11, x21, x12, x22) = ( 1 / 4 – 3 / 4) / 2 = - 1 / 4 .
4-й порядок:
f(x10, x20, x11, x21, x12) = (23 / 180 – (-1 /27)) / 5 = 89 / 540 ;
f(x20, x11, x21, x12, x22) = (- 1 / 4 – 23 / 180) / 5 = - 17 / 45 .
63
5-й порядок:
f(x10,x20,x11,x21,x12 ,x22) = (-17/45 – 89/540)/5 = 293 / 2700 .
Обобщённый многочлен Ньютона по формуле (2.19):
HnN(x) = 6 - 2(x + 2 ) + 2(х+ 2 )2 / 9 - (x+ 2 )2(x- 1 ) / 27 +
+ 89(x+2 )2(x- 1 )2 / 540 +293(x+2 )2(x- 1 )2 (x-3)/ 2700 .
Задачи.
1. Найти выражения для функций hi (x) и Нi (x) и построить полиномы Эрмита для следующих случаев интерполи-рования по двукратным узлам:
а) задача 1 из §1,
б) задача 1.г из §2,
в) n=2; х0 = -2 ; х1 = 0 ; х2 =2 ;
у(х0)=-8; у(х0)=2 ; у(х1)=1; у(х1)=0; у(х2) = -1 ; у (х2) = - 2;
г) n=3; х0 = 0 ; х1 = 1 ; х2 =2 ; х3 =4 ;
у(х0) = 10 ; у (х0) = - 1; у(х1) = 6 ; у (х1) =0 ; у(х2) = 1 ;
у (х2) = 2; у(х3) = 4 ; у (х3) = 1.
2. Найти разделённые разности и построить обобщенные интерполяционные многочлена Ньютона для геометри-ческих условий из задач 1 а), 1 б), 1в), г).
- Глава 1. Основные виды геометрических объектов
- §1. Основные аналитические способы задания кривых
- §2. Виды кривых
- §3. Основные способы задания прямых
- §4. Способы задания окружностей и их дуг
- §6. Виды поверхностей
- Пример 2.Уравнение конуса второй степени
- §7. Основные способы задания плоскостей
- §8. Аналитические способы задания пространственных тел
- Глава 2. Интерполяция кривых и поверхностей алгебраическими полиномами
- §1. Основные способы моделирования кривых. Интерполяция и аппроксимация
- §2. Интерполирование кривых с помощью алгебраических полиномов канонического вида
- §3. Интерполирование по однократным узлам. Интерполяционные многочлены Лагранжа и Ньютона
- §4. Интерполирование по двукратным узлам. Интерполяционные многочлены Эрмита
- §5. Интерполирование поверхностей
- 5.1. Интерполирование по однократным узлам. Билинейные поверхности
- 5.2. Интерполирование по двукратным узлам
- Глава 3. Моделирование кривых и поверхностей при помощи сплайнов
- I. Построение локальных сплайнов.
- II. Построение интерполяционных сплайнов.
- §1. Интерполирование кривых и поверхностей с помощью локальных сплайнов
- 1.1 Построение сплайнов по однократным узлам
- 1.2 Интерполирование по двукратным узлам
- §2. Построение интерполяционных сплайнов.
- 2.2. Кубические интерполяционные сплайны
- §3. Интерполяция с помощью в-сплайнов
- Глава 4. Интерполирование поверхностей по линиям
- §1.Интерполирование по кривым (линейчатые или плазовые поверхности)
- §2. Линейные поверхности Кунса
- §3. Обобщенные поверхности Кунса
- Глава 5. Аппроксимация алгебраическими полиномами
- §1. Аппроксимация по методу наименьших квадратов
- §2. Аппроксимация алгебраическими многочленами по критерию наилучшего равномерного приближения
- § 3. Аппроксимация при помощи кривых и поверхностей Безье
- Глава 6. Модели объектов. Плоские и пространственные линейные преобразования
- §1. Модели (структуры данных) графических объектов
- §2. Задание плоских и пространственных линейных преобразований при помощи уравнений связи
- § 3. Однородные координаты. Матричные представления линейных преобразований
- Задачи. Записать прямые и обратные матрицы элемен-тарных преобразований, при помощи которых можно осу-ществить следующие действия:
- § 4. Составные линейные преобразования
- § 5. Линейные преобразования каркасных моделей
- Глава 7.Проективные изображения трехмерных объектов
- §1. Аксонометрические проекции
- 1.1.Ортогональные проекции
- 1.2 Диметрические проекции
- Куб Диметрическая проекция
- 1. 3. Изометрическая проекция
- §2. Перспективные проекции
- §3. Построение проективных векторных изображений трёхмерных объектов
- Глава 8. Графические базы данных (гбд)
- §1. Структура и схема функционирования типовых гбд
- §2. Постановка задачи проектирования гбд в графической системе AutoCad
- Точки привязки
- §3. Разработка структуры гбд
- §4. Пакетные файлы гбд
- §5. Параметрические функции гбд
- §6. Создание библиотек слайдов гбд
- §7. Модификация основного меню AutoCad 2000
- 7.1. Файл меню. Его разделы. Управляющие символы
- 7.2. Модификация всплывающего и падающего меню AutoCad2000
- 7.3. Модификация экранного меню AutoCad2000
- 7.4. Модификация графического меню AutoCad2000
- §8. Использование разработанной базы данных
- Глава 9. Создание реалистических изображений
- § 1. Пространственные модели
- §2. Геометрическое моделирование объектов сложной формы
- § 3. Текстуры
- § 4. Основные операции при построении реалистических изображений
- § 5. Моделирование источников освещения и расчёт освещённости малых участков поверхности объектов
- § 6. Моделирование отражающих свойств поверхностей
- § 7. Моделирование отражения от поверхности (затенение)
- § 8. Удаление невидимых граней. Расчёт теней
- §9. Создание стереоскопического эффекта
- §10. Анимация
- Порядок выполнения и примерные темы курсовых работ
- Литература