Амосов А.А., Дубинский В.А., Копченова Н.В. Вычислительные методы для инженеров (1994) (1095853), страница 63
Текст из файла (страница 63)
х„= $ на п частичных отрезков [х; ~, х]. Сплайно и стпепени ш называется функция Ян(х), обладающая следующими свойствами: 1) функция Ян(х) непрерывна на отрезке [а, а] вместе со всеми своими производными Я~~" (х), 5~~2'(х), ..., Я~~р'(х) до некоторого поряд- ка р; 2) на каждом частичном отрезке [х,1, хД функция 5~(х) совпадает с некоторым алгебраическим многочленом Р„,(х) степени тп. Разность из — р между степенью сплайна и наивысшим порядком непрерывной на отрезке [а, а] производной называется дефектно.н сплайна.
Простейший пример сплайна дает непрерывная кусочно-линейная функция (рис. 11.8), являющаяся сплайном первой степени (линейнм.п сплайно.и) с дефектом, равным единице. Действительно, на отрезке (а, о] сама функция Я~(х) (нулевая производная) непрерывна. В то же время на каждом частичном отрезке Я~(х) совпадает с некоторым многочленом первой степени. Рис. 11.8 Наиболее широкое распространение на практике получили сплвйны.
Яз(х) третьей степени (кубические сплайны) с дефектом, равным 1 или 2. Такие сплайны на каждом из частичных отрезков [х, ~, х,] совпадают с кубическим многочленом: Яз(х) = Рзл(х) = а;+ Цх-х;~)+ с(х-х,,)г,+ 4(х-х,,)з (1163) и имеют на отрезке ~а, о] по крайней мере одну непрерывную произ-„, водную Я'(х).
Термин "сплайн" происходит от английского слова пар11псп (гибкая ,' линейка, стержень) — названия приспособления', использовавшегося' чертежниками для проведения гладких кривых через заданные точки.' Если гибкую стальную линейку поставить нв ребро и, изогнув, зафик-' сировать ее положение в узловых точках (рис. 11.9), то получится' механический аналог кубического сплвйна. В самом деле, из курса сопротивления материалов известно, что уравнение свободного равновесия профиля Я (х) линейки таково: У~~(х) = О.
Следовательно, в промежутке между двумя соседними узлами Я (х) представляет собой многочлен третьей степени. В то же время отсутствие у линейки изломов свидетельствует о непрерывности касательной к графику функции Я (х) и кривизны, т. е. производных Я'(х) и Я"(х).
2. Интерполяционный сплайн. Пусть функция у = 1 (х) задана таблицей своих значений у; = 1" (х;), з = О, 1, ..., и. Сплайн Яп(х) называется интерполяционнмм, если Я„(х;) = у; для всех з = О, 1, ..., и. Значение в; = Я (х;) называется наклоно.п сплайна в точке х;. Заметим, что на отрезке ~х; ~, х,] интерполяционный кубический сплайн однозначно определяется звдвнчем значений у, ~, уь з; ~, з,. В самом деле, из равенства (11.31) вытекает следующая формула: 334 (х- х)2(2(х- х$1) + УЧ) (х- х, 1)2(2(% — х) + Ью) з(х) = з,Π— Ь, у- + Ь, уз+ ( — з)2( — хь|) ( — хь1)2( — ~) (11.64) + Ь2 з'-1+ Ьг' ..., а. Тогда на каждом частичном отрезке [х;1, х~ в соответствии с формулой (11.64) сплайн однозначно определяется значениями у,1, уь у,'.
„у,'. (поэтому его и называют локальим.и салайнож). Заметим, что он совпадает с кубическим интерполяционным многочленом Эрмита (11.31) для отрезка [х; 1, х8. Из неравенства (11.33) получается следующая оценка погрешности интерполяции локальным кубическим сплайном: ~Л.) -Ж.)~ ~ — 'Ь„'.„, [а, Ь] 384 (11.65) где Ьщзх — — п|ах Ь; — максимальная из длин частичных отрезков. 11 ~<а Заметим, что для построенного указанным образом сплайна можно гарантировать непрерывность на отрезке [а, 6] только функции Яз и ее первой производной Я', т.е. его дефект равен 2. Существуют и другие способы выбора коэффициентов з,, приводящие к локальным сплайнам (кубический многочлен Бесселя', метод Акимы и др. [16]), 4. Глобальные способы построения кубических сплайнов.
Для того чтобы сплайн Яз(х) имел непрерывную на отрезке [а, Ь] вторую производную Я"(х), необходимо выбирать наклоны з, так, чтобы в точках х; "стыка" многочленов Рз, и Рз,;1 совпадали значения их вторых про- изводных: (11.66) Р" (х1) = Р", (х,), 1= 1, 2, ..., а - 1. 1 Фридрих Вильгельм Бессель (1784 — ~1846) — немецкий астроном. Здесь Ь; = х; — х,.1.
Различные методы интерполяции кубическими сплайнами отличаются один от другого способом выбора наклонов з,. Обсудим некоторые из них. 3. Локальный сплайн. Если в точках х; известны значения производной у,'. =,1'(х,), то естественно положить з; = у,'. для всех 1 = 6, 1, Пользуясь формулой (11.64), найдем значение р ( ) 2з 1+4в, 6у, у~-1 3 ' ' ~~; Ь; Ьг (11.67) Из подобной формулы, записанной для многочлена Рв „1, имеем Р; „,(з) — — — — — + 6 4в, 2з+1 у+1 — у; з,м ' Ь +1 Ь ~+1 Ьг (11.68) Таким образом, равенства (11.66) приводят к следующей системе урав- нений относительно коэффициентов з;: Л;1з; 1+ 2(Л;1 + ЛДд) з; + Л31в;,1 — 3[Л;~(у; - у„1) + Л;г1(у~~ - у)], ~=1,2, ..., п-1.
(11.69) в = Г(в) вп = Х (в). (11.70) Дополняя систему (11.69) уравнениями (11.70), приходим к системе уравнений с трехдиагональной матрицей, которая легко решается методом прогонки (см. гл. 5). Полученный таким образом сплайн называется фуада.асяталъныи «убичсски и сплайпо.а. 2в. Если в граничных точках известны значения второй производной ~ (в) и ~"(в), то можно наложить на сплайн граничные условия ~"(а) = Р",( ) = ~"( ), о "Я) = Р" „(*„) = Г(Ь), р д к дующим уравнениям: — — — — +6 4зв 2зг й — ув =у (а), Ьг (11.71) 28ум 44зп 6 уп уп-1 у (Ь) (11.72) Ьг (достаточно в равенстве (11.68) взять ~ = О, а в равенстве (11.67) е= и). 336 Заметим, что эта система уравнений недоопределена, так как число уравнений системы (равное и — 1) меньше числа неизвестных (равного и + 1). Выбор двух оставшихся уравений обычно связывают с некоторыми дополнительными условиями, накладываемыми на с плайя в граничных точках в и в (1рапичпмми условия.ии).
Укажем на некоторые из наиболее известных граничных условий. 1в. Если в граничных точках известны значения первой производной ~'(а) и ~'(в), то естественно положить ~ Зо. Полагая в уравнениях (11.71), (11.72) у"(а) = О, у (Ь) = О (независимо от того, выполнены ли зти условия для интерполируемой функции), придем к системе уравнений, определяющих так называемый естпестпвеннмй кубический сплайн. 4о.
Часто нет, никакой дополнительной информации о значениях производных на концах отрезка. Один из применяемых в этой ситуации подходов состоит в использовании условия "отпсутпстпвия узла". Выбор наклонов в, производят таким образом, чтобы для получаемого сплайна выполнялись у~~о~ил Рз1(х) н Рз г(х)> Рз,„1(х) = Рз п(х). Для этого достаточно потребовать совпадения в точках х1 и ха 1 соответствующих третьих производных: Р,' ',(х1) = Рз ',(х1), Рз",', 1( -1) = Р,"„'( -1). Эквивалентные алгебраические уравнения выглядят так: 2Ь-з(уо — у1) + Ь-г(во + в1) = 2Ь;з(У1 — Уг) + Ь-г(в1 + вг) 2Ьп-1(Уп-2 Уп-1) + Ьп-1(вп-2+ вп-1) = = 2Ьп (Уп-1 Уп) + Ьп (зп-1 + вп).
(11.73) (11.74) зо = вп~ Ь,,~(оп 1 + 2вп) + Ь1~(2во + в1) = 3[Ьп (уп — уп-1) + Ь1 (У1 — Уо)]. Существуют и другие подходы к заданию граничных условий (подробнее об этом см. [16]). Пример 11.13. Для функции, заданной табл. 11.12, построим (естественный) кубический снлайн. В этом случае система уравнений для наклонов во, в1, ..., в4 в точках зВ, з1, ..., хт записывается следующим образом: 337 Та же аппроксимирующая функция может быть получена несколько иначе.
Уменьшим число частичных отрезков, объединив попарно отРезки [хо, х1], [х1, хг] и [ха 2, хп 1], [ха 1, хп]. Это отвечает Разбиению УЧ м Ю м отрезка [а, Ь]. точками а = хо < х1 « ... х„г — — Ь, где х; = хп1 для 1 = 1, 2, ..., н — 3, и построению соответствующего интерполяционного м сплайна Яз(х). Условия "отсутствия узла" эквивалентны требованию М СОВПадЕНИя ЗНаЧЕНИй СПЛайиа ЯЗ(Х) В тОЧКаХ Х1 И Хп1 СО ЗНаЧЕНИяМИ У1 Уп-1.
5о. Если 7 — периодическая функция. с периодом, равным Ь вЂ” а, то систему (11.69) следует дополнить условиями зо = -0.5з1 + 1.2, ео + 4в1 + вз = 3.6, ~+4 з+ з=-12, вз+ 4вз + вл = -3.6, з4 = -05вз — 06 (11.75)/ (11.76) (П.77) (11.78) (11.79) Решая ее, получаем значения зв = 57/70, в~ = 54/70, зз = -3/10, аз = -$4/70, а~ = г х = -3/14. Теперь на каждом частичном / | отрезке значения сплайна можно вычи~ '~~ н лить по формуле (11.64).
Соответствующий график приведен на рис. 11.10 (ср. с рис. 11.6 и 11,7). о / г 3 в к Пример 11.14. Интерполируем функцию, заданную табл. 11.12, кубическим Рис 11.10 сплайном, используя условие "отсутствия узла". В этом случае уравнения (11.76)— (11.78) останутся прежними, а уравнения (11.75) и (11.79) заменяются следующими: аз — вз = 0.8, зт - зв = -0.8. (И.80) Решая систему (11.76)-(11.78), (11.80), получаем значения й~ = 8/15, я = 5/6, вз = ~/15, зз = -29/30, з4 = 8/15. График соответствующего сплайна мало отличается от графика, изображенного на рис.
11,10. 5. Погрешность приближения кубическими сплайиами. Т е о р е м а 11.9. Пусть функция /и.иеет на отрезке [а, 6] непрерывную производную четпвертого порядка и Мв — — шах [Р4>(х)~. Тогда [а,Ц для интперполяционноео кубического сплайна Яз(х), удовлетворяннцего юраничны.и условияи типов 1о, 2о, 4е или 5о (последнее — для случая периодической функции), справедлива следунпцая оценка погрешности/ гпах 1У(х) -Яз(х)1 ч СМ46 [а, Ь] (11.81) юшие производные функции / Сформулируем соответствующую теорему в наиболее простом случае, когда таблица задана с постоянным шагом а.
Т е о р е м а 11.10. При выполнении условий теореиы 11.9 для указанных в ней сплайнов справедливы неравенства 338 Заметим, что сплайн Яз(х) не только сам аппроксимирует функцию 1 (х), но его производные Я '(х), Я,"(х), Я< з ~ (х) приближают соответству- швх ~ Р л' (х) - Я "~ (х)! < СЛМ~Л~ ", Л = 1, 2, 3. [а, Ь) (11.82) 3 а м е ч а н и е. Благодаря большей простоте записи и благозвучному названию естественные сплайны получили значительное распространение. Однако искусственное наложение условий 7'"(а) = О, ~"(5) = О при интерполяции функций, которые этим условиям не удовлетворяют, приводит к значительной потере точности.
Вместо четвертого порядка точности (как локальный кубический сплайн или кубические сплайны с граничными условиями типов 1о, 2о, 4о, 5о) естественный сплвйн обладает лишь вторым порядком точности. Если использование естественного сплайна не вызвано какими-либо специальными причинами, то следует, по-видимому, отказаться от него в пользу кубического сплайна с граничным условием типа 4о. 8 11.12.