Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
GLAVA_9_FIN.doc
Скачиваний:
17
Добавлен:
15.12.2018
Размер:
301.57 Кб
Скачать

9.2. Интерполирование кривых с помощью алгебраических полиномов канонического вида

Алгебраической кривой (полиномом степени k) называют выражение

P(х)=C0+C1х+C2х2+…+Ck хk, (9.6)

где х – независимый параметр, k - степень полинома. Выражение (9.6) называются каноническим видом полиномов. При его использовании затрачивается минимальное число операций в расчёте значений P(х) в случае применения схемы Горнера, когда вычисления производятся по формуле P(х) = C0 + х(C1(C2 +…+ х(Ck-1 +Ck х)…)). Также канонический вид полиномов имеет наименьшее число коэффициентов, что минимизирует объем памяти, требуемой для его хранения.

Рассмотрим в общем виде задачу интерполирования (точного построения), в которой требуется точно выполнить набор условий, накладываемых в отдельных узловых точках, при помощи единой алгебраической кривой P(х) наименьшей степени k.

Постановку задачи можно сформулировать следующим образом:

построить полином P(х) наименее возможной степени k, который:

1) проходит через заданные точки P0 =(х0, у0),P1=(х1, у1), … ,Pn = (хn, уn);

2) в некоторых точкахPi =(хi, уi),производные полинома P(х) до некоторой степени j должны принимать заданные значения: P i)= уi ,... , P j i)= уi j .

Для отдельных частных случаев решение задачи найдено в явной форме (в виде готовых формул, не требующих предварительного составления и решения уравнений). Так, при простом прохождении функции через узлы без учета ее производных в узлах (пункт 2 общей постановки) решение рассмотренной задачи дают интерполяционные полиномы Лагранжа и Ньютона. При дополнительном задании первых производных в узлах решение дает полином Эрмита. Данные полиномы дают решение в готовом виде. Их общим недостатком является увеличенное число элементарных операций, затрачиваемых при расчете значений по сравнению с полиномом канонического вида. Его можно устранить, применяя группировку слагаемых при степенях параметра х.

Рассмотрим общее решение сформулированной задачи интерполирования для полинома Р(x) канонического вида минимально возможной степени k на некотором наборе узлов x0, x1,…, xn.

При расчете минимального значения k исходят из следующих соображений: число неизвестных коэффициентов С0, C1, …,Ck в полиноме равно (k+1). Общее число условий, накладываемых на функцию в узлах, складывается из:

  1. количества заданных точек P0,P1,…,Pn – их число равно (n+1);

  2. общего числа производных , заданных в этих точках.

Решение задачи интерполирования всегда существует и является единственным, если k+1 = n+1+. При выполнении этого условия число неизвестных равно числу уравнений. Отсюда следует предварительная величина минимальной степени интерполирующего полинома:

k=n+. (9.7)

После определения k решается задача об определении коэффициентов полиномаС = {С01,…,Сn}. Для этого составляется система из k уравнений, каждое из которых образуется подстановкой значения x = xi в условие первого типа y(xi) = yi, что дает уравнение вида: C0+C1xi+C2xi2+…+Ckxik=yi .

Для раскрытия условия на первую производную y(xi) = yi выполняем подстановку x = x1 в производную. Получаем уравнение: C1+2C2xi +…+kCkxik-1=yi.

Производные более высоких порядков раскрываются аналогично. Итоговую систему линейных уравнений можно представить в виде:

AC=Y, (9.8)

где C=(C0,C1,…,Ck) – искомый вектор коэффициентов полинома,

Y – вектор заданных точечных значений функции и ее производных,

A – матрица коэффициентов.

Искомый вектор неизвестных коэффициентов равен:

C = A-1Y, (9.9)

где A-1матрица, обратная к А .

Пример 1. Заданы:

1) значения полинома в трех узлах: y(x0) = y0; y(x1)=y1; y(x2)=y2 и

2) значение первой производной в узле x0 : y(x0)=y0.

Необходимо построить интерполирующий полином наименее возможной степени.

Решение.

1.Определение степени полинома k. Число n=2, суммарное число заданных значений производных =1. Следовательно, по формуле (9.7) k=3 и полином имеет вид: P(x) = C0 + C1x + C2x2 + C3x3, где 0, C1, C2, C3) - постоянные коэффициенты.

2.Определение коэффициентов полинома. Из условий вида 1) подстановкой вместо х значений х0, х1, х2 получаем уравнения

C0+C1x0+C2x02+C3x03 = y0;

C0+C1x1+C2x12+C3x13 = y1;

C0+C1x2+C2x22+C3x23 = y2 .

Из условия вида 2) подстановкой х = х0 в P(x) = C1 + 2C2x + 3C3x2 получаем уравнение C1 + 2C2x0 + 3C3x02 = y0.

Объединяя полученные уравнения, получаем систему вида (9.8), где

; ; .

Решением системы является вектор C=A-1 *Y.

Замечание. При специальном задании геометрических условий возможны случаи, когда реальная степень полинома меньше значения, задаваемого формулой (9.7). Например, если в приведенном выше примере задать условия вида:

  1. y(1)=0; y(2)=1; y(3)=2; 2) y(1)=1; то при этом

;;

; P(x) = x-1; k = 1 < 3.

Таким образом, в данном частном случае реальная степень интерполирующего полинома равна 1. Геометрический смысл примера понятен из Рис.9.1: точки Р0, Р1, Р2 лежат на прямой y=(x-1), угол наклона производной y(x0) также равен углу наклона этой прямой, поэтому в данном случае вместо кубической параболы (k=3) минимальную степень полинома получаем на наклонной прямой, имеющей k=1.

Рис.9.1

Если рассматривать частный случай y(1)=1; y(2)=1; y(3)=1; 2) y(1)=0 ;

то векторыY и С будут следующими:

; .

Интерполирующий полином примет вид: P(x) = 1. В данном случае реальное значение k=0, т.к. все точки лежат на прямой y=1 и угол наклона производной равен 0 (Рис. 9.2).

Рис. 9.2

В обоих приведенных примерах имеет место дублирование условий, наложенных на интерполирующих полином, поскольку некоторые из них оказываются излишними, описывающими объект, уже полностью определённый предыдущими условиями. Рассмотренные примеры показывают, что окончательное значение степени полинома k может быть уточнено только после расчета его коэффициентов.

Расчет одного значения полинома канонического вида степени k по схеме Горнера требует выполнения k сложений и k умножений. Сложность вычисления линейная по k - О(k1).

Вопросы для проверки знаний.

1. Какое выражение называют алгебраической кривой (полиномом) ?

2. В чем заключаются преимущества канонической формы представления полиномов ?

3. Для каких частных случаев задачи интерполирования по заданным узлам существуют явные решения в формульном виде ?

4. По какой формуле может быть рассчитана предварительная величина минимальной степени интерполирующего полинома ?

5. Каким образом составляются линейные уравнения по условиям, заданным в узлам на интерполирующий полином ?

6. Почему после расчета коэффициентов полинома его степень может оказаться меньше ее предварительной минимальной величины ?

Практические задания.

1. Найти степень полинома k и матрицу А (по возможности в численном виде) для определения коэффициентов полиномаС =(C0, C1, …,Ck ) для следующих наборов геометрических условий:

а) n=1; х0 = -1 ; х1 =1 ;

у(-1) = 1 ; у(-1) = 2; у (-1)=3; у(1) = 1,5;

б) n=3; х0 = 0 ; х1 = 1 ; х2 =2 ; х3 =3;

у(х0) = 0 ; у (х1)= 2 ; у(х2) =5 ; у (х3)=6;

в) n=2; х0 = -1 ; х1 = 0 ; х2 =1 ;

у0) = -2 ; у(х0) = 2; у(х1)= у(х1)=1; у(х2) = 1,5; у(х2) =0;

г) n=2; х0 = 1 ; х1 =3 ; х2 =4 ;

у(х0)(х0)=1; у(х1)=2; у(х1)=у(х1)=0; у(х2)=1; у(х2)= - 2.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]