Национальный цифровой ресурс Руконт - межотраслевая электронная библиотека (ЭБС) на базе технологии Контекстум (всего произведений: 525251)
Консорциум Контекстум Информационная технология сбора цифрового контента
Уважаемые СТУДЕНТЫ и СОТРУДНИКИ ВУЗов, использующие нашу ЭБС. Рекомендуем использовать новую версию сайта.

Элементы численных методов. Вып. 4. Кубические сплайны (90,00 руб.)

0   0
АвторыГудович Николай Николаевич
ИздательствоИздательский дом ВГУ
Страниц36
ID683722
АннотацияПодготовлено на кафедре вычислительной математики и прикладных информационных технологий факультета прикладной математики, информатики и механики Воронежского государственного университета.
Кому рекомендованоРекомендовано студентам 3-го и 4-го курсов факультета прикладной математики, информатики и механики Воронежского государственного университета.
Элементы численных методов. Вып. 4. Кубические сплайны [Электронный ресурс] / Н.Н. Гудович .— Воронеж : Издательский дом ВГУ, 2017 .— 36 с. — 36 с. — Режим доступа: https://rucont.ru/efd/683722

Предпросмотр (выдержки из произведения)

Элементы_численных_методов._Вып._4._Кубические_сплайны.pdf
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РФ ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ «ВОРОНЕЖСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ» Н.Н. Гудович ЭЛЕМЕНТЫ ЧИСЛЕННЫХ МЕТОДОВ Выпуск 4 Кубические сплайны Учебное пособие для вузов Воронеж Издательский дом ВГУ 2017
Стр.1
Содержание 1. Понятие сплайна……………………………………………………………4 2. Кубические сплайны……………………………………………………… 6 3. Вторые производные кубического сплайна……………………………..10 4. Кубический сплайн с начальными условиями…………………………..18 5. Метод прогонки решения трехдиагональных систем…………………...23 6. Пример численного алгоритма……………………………………………31 7. Упражнения и задания……………………………………………………..33 Библиографический список………………………………………………….35 3
Стр.3
счет увеличения которого стараются добиваться лучшего приближения функции, принимают число N частичных отрезков разбиения. Замечание 1.3. Термин «сплайн» (spline) имеет техническое происхождение: этим словом английские чертежники-кораблестроители прошлых веков называли длинную гибкую рейку для вычерчивания деталей корпуса корабля в натуральную величину, то есть чертежный инструмент для проведения гладких кривых. В современной же математике под сплайном понимают функцию , которая локально (то есть на частичных отрезках разбиения) задается многочленами i фиксированной степени n. При этом упомянутые многочлены считаются подобранными так, чтобы в любом внутреннем узле xi производные соседних многочленов i, i+1 до порядка m включительно совпадали. Такое условие на значения производных многочленов i, i+1 в узле xi приходится налагать, поскольку в этой точке определены оба этих многочлена, и каждый из них при отсутствии требований (1.3) мог бы иметь в указанном узле различные значения производных. Последнее же исключало бы принадлежность функции , составленной из таких многочленов, классу гладкости Cm[a, b]. Во всех же других точках x гладкость функции  обеспечена автоматически, поскольку в таких точках эта функция совпадает лишь с одним из многочленов, а всякий многочлен обладает в этих точках непрерывными производными любого порядка. 2. Кубические сплайны На практике чаще всего используют сплайны третьей степени (n = 3) второго порядка (m = 2). Такие сплайны называют кубическими, поскольку график такого сплайна составлен из отрезков графиков многочленов третьей степени, а графики многочленов третьей степени принято называть кубическими параболами. Выбор для m значения 2 объясняется в том числе и тем, что при движении обрабатывающего инструмента в станках с числовым программным управлением (ЧПУ) по дважды непрерывно дифференцируемой кривой удается избежать ударных нагрузок, которые в силу 2-го закона Ньютона возникали бы в случае разрывов 2-й производной и которые могли бы привести к разрушению обрабатывающего 6
Стр.6
инструмента или обрабатываемой поверхности. Значение же n = 3 – минимальное значение, обеспечивающее существование интерполяционного сплайна класса C2[a, b] при любом наборе {f(xi)} значений функции f в узлах (1.1). Локальные представления (1.2) для кубического сплайна имеют вид: i(x) = a0 (i) + a1 (i) x +a2 (i) x2 + a3 поэтому для задания кубического сплайна коэффициентов aj {i} x3, xi–1 ≤ x ≤ xi, i = 1, 2, … , N, (2.1) следует задать 4N (i) (каждый из многочленов (2.1) имеет 4 коэффициента, а всего таких многочленов N). Выбор этих коэффициентов должен быть подчинен условиям интерполяционности (1.4), которые для данного случая удобно записать в виде системы линейных алгебраических уравнений a0 a0 a0 a0 (1) + a1 (i) + a1 (i+1)+a1 + a1 (N) (1) x0 + a2 (i) xi + a2 (i+1)xi+a2 (N) xN+a2 (1) x0 (i) xi (i+1)xi (N)xN 2 + a3 2 + a3 2+ a3 2+ a3 (1) x0 (i) xi (i+1)xi (N)xN 3 = f(x0), 3 = f(xi), i = 1, 2, … , N–1, 3 = f(xi), i = 1, 2, … , N–1, 3 = f(xN). (2.2) (2.3) (2.4) (2.5) Заметим, что уравнение (2.3) получено приравниванием значения i(xi) локального представителя i во внутреннем узле xi значению f(xi) приближаемой функции f, а уравнение (2.4) для того же значения i – приравниванием тому же значению f(xi) значения i+1(xi) соседнего локального представителя i+1 в том же внутреннем узле xi. Выписав эту пару уравнений, мы сразу убили двух зайцев: обеспечили выполнение условия гладкости (1.3) с k = 0 в любом внутреннем узле xi (то есть обеспечили непрерывность сплайна  на отрезке [a, b]) и одновременно обеспечили выполнение условия интерполяционности в любом внутреннем узле. Выполнение условия интерполяционности в краевых узлах x0, xN обеспечивается соответственно уравнениями (2.2) и (2.5). Выписанные выше уравнения (2.2)–(2.5) должны быть дополнены уравнениями, вытекающими из условий гладкости (1.3) с k = 1и k = 2. 7
Стр.7
Для вывода этих уравнений дифференцируем представление (2.1) по переменной x. В результате для первой производной локального представителя i получаем формулу i(x) = a1 (i) + 2a2 (i) x + 3a3 (i+1) + 2a2 (i) x2, а заменяя здесь индекс i на i+1, и формулу i+1(x) = a1 (i+1) x + 3a3 (i+1) x2 (2.6) (2.7) для первой производной соседнего локального представителя i+1. Придавая затем в формулах (2.6), к следующей группе уравнений a1 (i) + 2a2 (i) xi +3a3 (i) xi 2 = a1 (2.7) переменной x значение xi и приравнивая в соответствии с требованием (1.3) при k равном единице полученные значения i(xi), i+1(xi), приходим (i+1) + 2a2 (i+1) xi +3a3 (i+1)xi 2, i= 1, 2, … , N–1, (2.8) которая должна быть добавлена к системе (2.2) – (2.5). Далее дифференцированием равенств (2.6), (2.7) получаем формулы i(x) =2a2 (i) + 6a3 i+1(x) = 2a2 (i) x, (i+1) + 6a3 (i+1) x (2.9) (2.10) для вторых производных соседних локальных представителей i, i+1. Придавая в формулах (2.9), (2.10) переменной x значение xi и приравнивая получившиеся при этом значения вторых производных, приходим к еще одной группе уравнений 2a2 (i) +6a3 (i) xi = 2a2 (i+1) + 6a3 (i+1) xi, i = 1, 2, … , N–1, (2.11) которые также должны быть добавлены к уравнениям (2.2) – (2.5). Уравнения (2.11) обеспечивают выполнения условия гладкости (1.3) при значении k равном двум. Система (2.2)–(2.5), (2.8), (2.11) есть система линейных алгебраических уравнений относительно неизвестных aj 8 (i). Число неизвестных в этой системе равно 4N, а всего этих уравнений 4N–2. Для получения замкнутой системы уравнений (то есть системы с числом
Стр.8
уравнений, равным числу неизвестных) не хватает двух уравнений. Эти уравнения получаются из двух дополнительных условий, которые задаются на концах отрезка [a, b] и потому называются краевыми условиями. Например, можно задать значения  и  вторых производных сплайна в узлах x0, xN соответственно. В этом случае с учетом формулы (2.9) получим следующую пару дополнительных уравнений: 2a2 (1) + 6a3 (1) x0 = , 2a2 (N) + 6a3 (N) xN =. (2.12) Другая возможность получить пару дополнительных уравнений – это задать в указанных узлах значения не вторых производных сплайна, а значения ,  его первых производных. В силу формулы (2.6) тогда получится другая пара дополнительных уравнений. a1 (1) + 2a2 (1) x0 + 3a3 (1) x0 2 = , a1 (N) + 2a2 (N) xN + 3a3 (N) xN 2 = . (2.13) Замечание 2.1. Если в формуле (2.12) положить  =  = 0, то получим сплайн, который называют естественным кубическим сплайном. Дело в том, что условия (2.12) являются математическим аналогом ситуации, когда в точках плоскости (x0, f(x0)), (xN, f(xN)) гибкая рейка (« физический сплайн») закреплена шарнирно, то есть может свободно поворачиваться вокруг этих точек. В этом случае концы рейки, расположенные соответственно левее и правее геометрических прямых на плоскости, параллельных оси oy и проходящих через точки с абсциссами x0, xN, займут естественное в данной ситуации прямолинейное положение, а значит, функция (x), описывающая кривую, по которой изогнется рейка, проходящая через точки (xi, f(xi)) (i = 0, 1, 2, … , N), вне отрезка [a, b] будет совпадать с многочленами первой степени. А так как вторые производные многочленов первой степени равны нулю, то вне отрезка [a, b] будет иметь место равенство (x)  0. По непрерывности нулевые значения вторых производных перейдут и в точки x0, xN. Замечание 2.2. Сплайн с дополнительными условиями (2.13) называют сплайном с жестко заделанными концами. Физически это соответствует тому, что концы рейки, расположенные левее и правее упомянутых выше геометрических прямых, жёстко закреплены плоскости oxy вдоль некоторых геометрических прямых, образующих с на 9
Стр.9
осью ox заданные углы (параметры  и  в уравнениях (2.13) есть тангенсы этих углов). Замечание 2.3. Выбор коэффициентов aj (i) в качестве неизвестных при построении кубических сплайнов, естественный и наглядный с теоретической и методической точек зрения, на практике оказывается не рациональным, поскольку при выборе в качестве параметров других характеристик сплайна, а именно значений s i = (x i), i = 0, 1, ... , N, вторых производных сплайна в узлах (2.14) xi, задача построения интерполяционного кубического сплайна после простых аналитических преобразований сведётся к решению линейной системы с существенно меньшим количеством неизвестных и более простой матрицей. 3. Вторые производные кубического сплайна Обозначим через h i длину i-го отрезка разбиения hi = xi - x i–1. Рассмотрим набор чисел s0, s1, … , si–1, si, … , sN и набор значений функции f f(x0), f(x1), … , f(xi–1), f(xi), … , f(xN). (3.2) (3.3) Теорема 3.1. Для любых f(x i–1), f(x i), si–1, si из наборов (3.2), (3.3) найдется единственный многочлен степени не выше третьей, значения которого в точках x i–1, x i совпадают соответственно с f(xi–1), f(xi), а значения второй производной которого в этих точках равны соответственно числам s i–1, s i. Доказательство Запишем многочлен степени не выше третьей в виде разложения a0 + a1x + a2x2 + a3x3 по степеням независимой переменной x. 10 (3.4) (3.1)
Стр.10

Облако ключевых слов *


* - вычисляется автоматически