Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Vse_shpory_po_KMMM.docx
Скачиваний:
29
Добавлен:
21.04.2019
Размер:
1.91 Mб
Скачать

10.2. Интерполяция кривых локальными сплайнами.

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

Поступим следующим образом, введем естественную параметризацию кривой.

S – в данном случае это длина дуги, отсчитываемая от точки . Тогда углу будет соответствовать единственное значение .

- общая длина кривой.

Рассмотрим интерполяционный сплайн первой степени.

(1)

где

Геометрически такой сплайн представляет собой ломаную, состоящую из кривых, соединяющих между собой точки:

Из условия (1) можно получить

(2)

где , а производная взята по параметру t.

Как видно, это отношение представляет собой тангенс угла наклона звена сплайна:

В этом случае, если звено сплайна параллельно оси y.

t - безразмерный параметр, который изменяется от 0 до 1.

Отметим интересное свойство сплайна, которое заключается в том, что тангенс угла наклона не зависит от S. Положение точки определяется параметром t , изменяя значение которого от 0 до 1 можно получать промежуточные значения на звене сплайна.

Как видно на этом примере (формула 1) параметрический сплайн первой степени в случае плоской кривой представляет собой пару обычных сплайнов. Один для координаты x,а второй для координаты у. В качестве независимой переменной выступает S. Если кривая пространственная, то добавится такая же формула для координаты z.

11.2. Вычисление интеграла по таблице значений функции с использованием интерполирующего полинома Эрмита.

S3,2(x)=yi F1(t)+ yi+1 F2(t)+ mi hiF3(t)+ mi+1 hiF4(t)

a=x1 x2 xn-1 xn=b

t = , dx=hi∙dt

)

12.2. Кубический сплайн дефекта 2 (s3,2(X)).

На участке (xi, xi+1) S3,2(x)=ai0+ai1x+ai2 x2+ai3 x3 (1).

a i0, ai1, ai2 ,ai3 должны быть определены из условия:

S3,2(xi)=yi (2) – условие непрерывности сплайна

S3,2(xi+1)=yi+1

S3,2(xi)=mi (3) – условие непрерывности производной

S3,2(xi+1)=mi+1

mi – наклоны сплайна в узлах.

Условия (2) и (3) образуют систему линейных алгебраических уравнений, решив которые можно найти ai0, ai1, ai2 ,ai3 .

Если теперь подставить эти решения в (1), то вид сплайна получится следующим:

S3,2(x)=yi F1(t)+ yi+1 F2(t)+ mi hiF3(t)+ mi+1 hiF4(t) (4)

hi= xi+1 xi

F1(t), F2(t), F3(t), F4(t) – полиномы Эрмита.

F1(t)=(1t)2(1+2t)

F2(t)=t2(32t) t= , t – безразмерная переменная.

F3(t)=t(1t)2

F4(t)=t2(1t)

Алгоритм построения данного сплайна.

  1. Проверить на какой из отрезков (xi, xi+1) попадает значение аргумента х, для которого нужно найти S3,2(x). Если при этом окажется, что х= xi , то

S3,2(x)=yi , иначе нужно вычислить hi, затем t, F1(t), F2(t), F3(t), F4(t) и воспользоваться формулой (4).

  1. Если нужно построить значение S3,2(x )с шагом на интервале (a,b), то к этой функции нужно обратиться в цикле по шагам.

Во многих практических случаях величина наклонов mi неизвестна. Для их определения по заданной таблице (xi,yi) их можно вычислить по приближенным формулам:

mi Li + Mi ; i=2,3,…,N-1 (9), т.е. для внутренних участков.

m1 (1+M2)∙ M2 (10), для левого угла.

mn LN-1 +(1+LN-1)∙ (11)

Mi =

Li=1-Mi

Этот сплайн также относится к семейству локальных сплайнов.

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