§3. Интерполирование по однократным узлам. Интерполяционные многочлены Лагранжа и Ньютона
Рассмотрим случай, когда требуется обеспечить прохождение алгебраической кривой через заданные точки P0 (x0y0), P1 (x1 ,y1),...,Pn (xn,yn), (условия типа 1). На производные в данных точках никаких условий не накладывается. Узлы этого типа называют однократными, поскольку в них задано одно геометрическое условие. Такая задача на практике возникает в тех случаях, когда 1) требуется провести степенную кривую через набор точек либо 2) заменить функцию f ( х ) произвольного вида
51
степенной L(х) при заданных положениях узлов x0, x1 ,..., xn .
В математической форме задачу интерполирования по однократным узлам можно сформулировать следующим образом. В узлах xi , (i = 0,1 ,...,n; xi xj при i j) заданы значения у(xi)=уi. Требуется построить полином L(x) минимально возможной степени, для которого L( xi) = уi , (i = 0,1 ,...,n).
Решение задачи существует и единственно (доказатель-ство этого факта выходит за рамки курса), хотя сам много-член может быть представлен в разных видах. Наряду с каноническим представлением (2.5) в задаче интерпо-лирования по однократным узлам он может быть представ-лен в виде полиномов Лагранжа и Ньютона.
Так как общее число геометрических условий в задаче равно n+1, то искомый интерполяционный полином имеет степень не выше n (при этом число его неизвестных коэффициентов C0, C1, …, Cn равно n+1). Примеры, в которых степень полинома меньше расчётной, рассмотре-ны в §2.
Для дальнейшего анализа рассмотрим полином (х), принимающий нулевые значения только в узлах интерполирования x0, x1 ,..., xn и имеющий единичный коэффициент при старшей степени х. Его можно представить в виде :
(х)= (x-x0)*(x- x1)*...*(x- xn ).
Используя правило дифференцирования произведения, можно показать, что
При подстановке в производную узловой точки xi все слагаемые кроме i-го обнуляются и получается произве-дение, в котором отсутствует i-тый сомножитель:
( xi) = (xi -x0)*( xi - x1)*...*( xi - xi-1 )* (xi - xi+1)*…* (xi - xn).
52
Рассмотрим выражение
(х)/(x-xi)=(x -x0)*( x - x1)*...*( x - xi-1 )* (x - xi+1)*…* (x - xn).
Используя правило дифференцирования произведений, получим его производную в следующем виде:
В узле х=xi значение производной равно
Рассмотрим явное решение задачи интерполирования по однократным узлам. В основе его лежит использование функций Лагранжа Фi (x) (i = 0,1 ,...,n), которые выделяют соответствующий узел:
Построение каждой функции Фi (x) можно представить следующим образом. Полином, принимающий нулевые значения в узлах x0, x1,..., xi-1, xi+1,… xn и имеющий единич-ный коэффициент при старшей степени имеет вид:
(х)/(x-xi)=(x -x0)*(x -x1)*...*(x - xi-1 )* (x - xi+1)*…* (x - xn).
В узле х=xi значение его равно некоторой константе
( xi) = (xi -x0)*( xi - x1)*...*( xi - xi-1 )* (xi - xi+1)*…* (xi - xn),
которая в общем случае может принять любое значение (как по величине так и по знаку). Для того, чтобы искомая функция в узле х=xi стала равной единице, необходимо (х)/(x-xi) разделить на ( xi):
(2.9)
53
Полученные функции Лагранжа Фi (x) обладают всеми требуемыми свойствами. Интерполяционный многочлен Лагранжа имеет вид:
(2.10)
Выражение (2.10) в векторной форме можно представить как скалярное произведение:
L n (x)=(Ф(х),Y), (2.10а)
где Y=( y0 , y1 , . . . , yn) ; Ф(х)=(Ф0 (х) , Ф1 (х) , . . . , Фn (х) ).
Текст функции lag вычисления интерполяционного многочлена Лагранжа, а также отладочная программа представлены в Приложении.
Рассмотрим простейший случай интерполирования на отрезке [x0, x1]. В его граничных точках заданы по одному геометрическому условию: у(x0) = у0 , у(x1) = у1 . Наи-меньшая степень полинома S(x) равна единице. Явное решение для S(x) даёт следующий многочлен Лагранжа:
S(x)= у0 (x1 –x)/(x1 -x0)+ у1 (x-x0) /(x1 -x0 ). (2.11 а)
В векторной форме:
S(x) = (Ф(x),Y);
Ф(x) = ( (x1 –x) / (x1 -x0), (x-x0) / (x1 -x0 )); Y= ( у0 , у1 ).
Переходя к безразмерной нормированной переменной t=(x-x0) / (x1 -x0 ), у которой t(x0)=0; t(x1)=1, получим более простые выражения для функций Лагранжа: Ф1 (t)=1-t; Ф2 (t) = t. Введём также векторT 1 степеней t порядка 1 и матрицу МЛ, задающую переход отT 1 к вектору значений функций Лагранжа (Ф1 (t); Ф2 (t)) :
54
При этом вектор значений функций Лагранжа и полином S(t) можно представить в виде :
Данное представление помогает унифицировать интер-поляцию кривой отрезком прямой на произвольном интервале и используется при сплайновом интерполи-ровании.
Рассмотрим иное представление интерполяционного мно-гочлена. Допустим, рассматривается задача интерпо-лирования некоторых значений у(xi)=уi на однократных узлах x0, x1 , ... , xn .
Определение. Разделёнными разностями (разностными отношениями) по узлам интерполирования x0, x1 ,..., xn порядка 1, 2, 3, …, n называются следующие величины
f(x1, x0) = (у1 - у0)/( x1 - x0 );
f(x2, x1, x0) = (f(x2, x1) - f(x1, x0))/( x2- x0 );
f(x3, x2, x1, x0) = (f(x3 ,x2, x1) - f(x2, x1, x0))/( x3- x0 );
. . .
f(xn, . . . , x0) = (f(xn , . . ., x1) - f(xn-1, . . ., x0))/( xn- x0 ).
C помощью разделённых разностей, которые являются некоторыми постоянными величинами, рассчитываемыми по значениям xi , уi ( i = 0,1 , ... ,n), многочлен можно представить в следующем виде:
LNn (x)= у0+( x - x0 ) f(x1, x0) + ( x- x0 )( x- x1 ) f(x2, x1, x0) + . . .+ (x - x0)(x- x1)*. . . * ( x - xn-1 ) f(xn, . . . , x0). (2.12)
55
Формула (2.12) называется интерполяционным много-членом Ньютона. У обоих полиномов порядок узлов в формулах может быть выбран любым способом.
Пример. На множестве однократных узлов x0 = - 1 ; x1 = 2; x2 =4 заданы значения функции у(x): у(x0) = у0 = - 2; у(x1) = у1 = 1; у(x2) = у2 = 5.
Построить:
функции и многочлен Лагранжа,
разделённые разности и многочлен Ньютона.
Решение. 1. Вспомогательный полином (х) имеет вид :
(х)= (x-x0)(x- x1)(x- x2 )= (x+1)(x-2)(x-4 ).
Функции Лагранжа строим по формуле (2.9):
Многочлен Лагранжа строим по формуле (2.10):
В векторной форме: L 2 (x)=(Ф(х),Y), гдеФ(х) = (Ф0(х) , Ф1 (х), Ф2(х))=
Y = ( y0 , y1 , y2) = ( -2 , 1 , 5).
2. Рассчитаем разделённые разности :
f(x1, x0) = (у1 - у0)/( x1 - x0 )=(1-(-2)) / (2-(-1)) = 1;
f(x2, x1) = (у2 - у1)/( x2 - x1 )=(5-1) / (4-2) = 2;
f(x2,x1,x0)=(f(x2, x1) - f(x1,x0))/(x2-x0)=(2–1) / (4-(-1)) = 1 / 5.
Многочлен Ньютона строим по формуле (2.12):
LN2 (x)= у0+( x - x0 ) f(x1, x0) + ( x- x0 )( x- x1 ) f(x2, x1, x0) =
- 2 +( x +1 ) + ( x +1 )( x- 2 ) / 5.
56
Правильность обоих многочленов можно проверить не-посредственной подстановкой в них значений x0 = - 1 ; x1 = 2 ; x2 =4.
Задачи.
1. Найти выражения для функций Лагранжа и построить полиномы Лагранжа для следующих случаев интерполи-рования по однократным узлам:
а) задача 1.в из §2,
б) n=2; х0 = 1 ; х1 = 2 ; х2 =3 ;
у(х0) = - 2 ; у (х1)= 1 ; у(х2) = - 4 ;
в) n=3; х0 = -1 ; х1 = 0 ; х2 =1 ; х3 = 2 ;
у(х0) = 10 ; у (х1) = 5 ; у(х2) = - 1 ; у(х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. Анимация
- Порядок выполнения и примерные темы курсовых работ
- Литература