Сплайн ( — планка, рейка) — функція, область визначення якої розбита на шматки, на кожному зі шматків функція є деяким поліномом (многочленом).

В задачах інтерполяції, інтерполяція сплайном краща, ніж інтерполяція многочленом, оскільки дає схожі результати навіть при менших степенях поліномів, а також при її використанні не виникає феномена Рунге.

Максимальний степінь поліномів в сплайні називається степенем сплайна. Різниця між степенем сплайна і його гладкістю називається дефектом сплайна.

Визначення та історія

Походження назви та історія Сплайн (spline) називали гнучку металеву лінійку — універсальне лекало , що використовували креслярі для того, щоб гладко з'єднати окремі точки на кресленні. Тобто для графічного виконання інтерполяції. Більше того, крива, що описує деформацію гнучкої лінійки зафіксованої в окремих точках є сплайном. Отже, ми маємо фізичну модель сплайн-функції (або навпаки сплайн-функція є математичною моделлю гнучкої лінійки). Інтуїтивний підхід до використання кускових функцій в задачах апроксимації зустрічався в математиці протягом тривалого часу. Але, як зазначає Корнійчук Н. П., втягнення сплайнів в теорію наближення відбулося через задачі інтерполяції, завдяки їхнім хорошим обчислювальним та апроксимативним властивостям.

Застосування Початок розвитку теорії інтерполяції сплайнами та й сам термін сплайн відраховують з 1946 року зі статті Ізо Шонберга (Isaac Jacob Schoenberg). Особливо інтенсивний її розвиток відбувся в 1950—1970 роки, традиційною прикладною сферою використання інтерполяційних сплайнів стали в цей час системи автоматизованого проектування. Однак потенційні можливості сплайнів значно ширші ніж просто опис деяких кривих.

В реальному світі велика кількість фізичних процесів за самою своєю природою є сплайнами. В механіці це деформація гнучкої пластини чи стержня, зафіксованих в окремих точках; траєкторія руху тіла, якщо сила, що діє на нього змінюється ступінчато (траєкторія штучного космічного об'єкта з активними та інерційними відрізками руху, траєкторія руху літака при ступінчатій зміні тяги двигунів та зміні профілю крила тощо.).

В термодинаміці це теплообмін в стрижні складеному з фрагментів з різною теплопередачею.

В хімії — дифузія через шари різних речовин. В електриці — поширення електромагнітних полів через різнорідні середовища. Тобто сплайн не надумана математична абстракція, а в багатьох випадках він є розв'язанням диференційних рівнянь, які описують цілком реальні фізичні процеси.

Сплайни — це потужний математичний інструмент, що забезпечує гнучкість у моделюванні, високий ступінь точності наближення та зниження обчислювальної складності. Вони знаходять широке застосування в аналізі сигналів, побудові технологічних об'єктів і оптимізації їх характеристик.

Сплайнове моделювання — це вид 3Д моделювання, при якому модель створюється за допомогою сплайнів. Лінії сплайнів задаються тривимірним набором контрольних точок в просторі, які і визначають гладкість кривої. Всі сплайни зводяться до каркаса сплайна, на основі якого вже буде створюватися огинаюча тривимірна геометрична поверхня.

Алгебраїчний сплайн Розгляд сплайнів почнемо з визначення алгебраїчного сплайна [ ]: Функція визначена і неперервна на відрізку називається поліноміальним сплайном порядку з вузлами , якщо на кожному з відрізків , є алгебраїчним поліномом степені, що не перевищує , а в кожній з точок деяка похідна може мати розрив. Якщо в точці неперервні функції , а похідна в точці терпить розрив, число називають дефектом сплайна. Множину називають сіткою вузлів сплайна, а точки вузлами або точками стикання чи склейки сплайна.

Як слідує з визначення, для побудови сплайна, що складається з фрагмента потрібно знайти такі значення числових параметрів для кожного фрагмента — полінома степені , які забезпечать неперервність у вузлах, як самої функції так і необхідних похідних. Отже всього слід визначити параметрів. З врахуванням умови інтерполяції та неперервності перших двох похідних визначення параметрів зводиться до розв'язання системи з лінійних рівнянь. Як правило, значення коефіцієнтів для відрізків поліномів безпосередньо не розраховуються.

Для визначення інтерполяційного сплайна з неперервною першою похідною достатньо розрахувати значення першої похідної у вузлах. Спосіб визначення похідних у вузлах сплайна визначає широку різноманітність інтерполяційних сплайнів. Часто похідні визначаються не як константи, а як деякі залежності від інтерпольованої функції та сітки інтерполяції.

Якщо значення першої похідної у вузлах розраховувати виходячи з умови неперервності другої похідної (вирішуючи систему з n лінійних рівнянь) то сплайн матиме дві неперервні похідні. Такий спосіб побудови сплайна, як і сам сплайн називають глобальним, оскільки при визначенні кожного з його коефіцієнтів враховується вся множина вузлів інтерполяції.

В інших випадках, для визначення окремого коефіцієнта, враховуються лише найближчі вузли інтерполяції і такі способи побудови, як і самі сплайни, називають локальними. Параметри фрагмента такого сплайна можна визначити незалежно від інших фрагментів.

Найпростішою умовою побудови фрагмента локального сплайна є умова рівності полінома на кінцях відрізків відповідним значенням інтерпольованої функції.

Для найпростішого сплайна — ламаної цієї умови цілком досить. Два коефіцієнта прямої однозначно визначаються з двох рівнянь. Такий сплайн є локальним. Для поліномів вищих степенів ми повинні додати додаткові умови таким чином, щоб загальне число рівнянь дорівнювало числу коефіцієнтів полінома. Так для сплайна 3-й степені такою умовою є рівність 1-ї похідної на кінцях відрізка деякому значенню, що визначається для сусідніх відрізків однаковим чином (у формулах (2) через значення похідної функції яку наближують).

Система з 4-х рівнянь

дозволяє однозначно визначити 4 коефіцієнти полінома. Для полінома 5-ї степені ми повинні додатково накласти умову рівності 2-ї похідної на кінцях відрізка і т. д. Наведене вище показує, чому сплайн будують переважно з поліномів непарних степенів (з парною кількістю коефіцієнтів).

Для поліномів парних степенів при складанні системи (3) залишається невизначеною похідна в одному з кінців відрізка і умова рівності похідних (гладкості кривої) не виконуватиметься. Тому для полінома 2-ї степені неможливо досягти рівності першої похідної в точках стику, а для 4-ї степені другої похідної і так далі, виходячи з системи рівнянь (3). Для побудови сплайнів з парними степенями штучно додають додаткові умови щоб сформувати систему рівнянь подібну (3). Коли похідні полінома сплайна визначаються як відповідні похідні інтерпольованої функції, то сплайн є ермітовим.

Існують локальні методи побудови сплайнів Бесселя та Акіми, B — сплайни. В основному, коли йде мова про сплайни, то мають на увазі сплайни, побудовані з алгебраїчних поліномів. Саме до таких належить приведене вище визначення. Саме ці сплайни є найбільше вивченими. Проте сплайн може складатися з фрагментів функцій будь-якого класу. В розглянуто побудову таких сплайнів, та досліджуються їхні властивості. Автор не дає загального визначення побудованих сплайнів. Очевидно, що для довільних класів функцій з яких складається сплайн наведене на початку статті визначення не зовсім годиться. Якщо, наприклад, сплайн складається з відрізків експоненти то поняття дефекту сплайна втрачає зміст. Хоча кількість неперервних похідних залишиться важливою характеристикою. Побудова сплайна, фрагментами якого є розривні функції (раціональні функції, функції Паде) дещо виходить за рамки сплайнової ідеї, оскільки однією з основних переваг сплайнів є їхня гладкість. Якщо довільно розширювати такі конструкції, то стираються відмінності сплайнів від кускових функцій. Іншою перевагою сплайнів є ефективність обчислень. Надмірне ускладнення фрагментів суттєво знижує переваги сплайнів перед класичними функціями.

Для сплайнів є характерними такі ознаки: сплайн складається з фрагментів — функцій одного класу, які різняться лише своїми параметрами; на сусідні фрагменти в точках стикування накладаються певні умови, що зводяться до неперервності значень та деяких перших похідних. Сплайни — напрямок прикладної математики, що інтенсивно розвивається. В Internet міститься широка бібліографія щодо сплайнів (Spline Bibliography Database (SBD)) .

Класифікація сплайнів Як зазначалося вище, існує велика кількість конструкцій, які називають сплайнами. Тому зробимо спробу внести певну класифікацію в це різноманіття, маючи на меті виділити ті ознаки, які дозволять вибрати сплайни найпридатніші для конкретної прикладної задачі.

Вид фрагментів сплайна. Те що сплайн складається з фрагментів однакового виду є однією з ключових ознак, що відрізняє його від інших кускових функцій. Найвідоміші сплайни, що складаються з фрагментів — алгебраїчних поліномів не вище заданого степеня. Як правило це кубічні поліноми, або поліноми непарних степенів — лінійний, кубічний, п'ятого степеня. Вищі степені застосовують рідко, зважаючи на ускладнення розрахунків та складнощі описані в попередньому розділі. Основною їхньою перевагою є простота розрахунків та аналізу. Недоліком є те, що відносно мало реальних фізичних процесів відповідають цій залежності.

Експоненційні сплайни Якщо гнучку металеву лінійку зафіксовану у вузлах натягнути, то розв'язком диференційного рівняння буде не алгебраїчний поліном, а експонента. Тому такі сплайни називають також напруженими. Експонента описує багато фізичних процесів в динамічних системах. Недоліком є труднощі розрахунку.

Тригонометричні сплайни Сплайни, фрагменти яких описуються тригонометричними поліномами. Мають досить складні розрахункові вирази. Більше п'ятдесяти різноманітних за видом фрагментів сплайнів описано в роботах Попова Б. О. 

Раціональні сплайни та сплайни Паде Їхньою особливістю є можливість розриву похідних на фрагментах, при неперервності у вузлах.

Ансер М. будує фракціональні сплайни, де фрагменти задані з допомогою Гама функції.

Доцільність застосування певного виду фрагментів ґрунтується на конкретних умовах задачі та обмеженнях реалізації. Як правило основними вимогами є досягнення заданої точності інтерполяції за прийнятних затрат часу та ресурсів на реалізацію. Вдалий вибір виду фрагментів, що відповідає характеру процесу дозволяє скоротити витрати.

Число фрагментів. Очевидно, що мінімальним числом фрагментів є один. Класичне визначення сплайна обмежує число фрагментів певним числом на скінченному відрізку. Проте можна будувати сплайни і з нескінченим числом фрагментів, а реально це методи і алгоритми котрі не потребують інформації про певну кількість фрагментів. Представником цих сплайнів є кардинальні, досліджені Шенбергом. Для побудови сплайнів з необмеженим числом фрагментів найкраще підходять локальні сплайни.

Ширина фрагментів. Варто виділити сплайни з рівною шириною фрагментів. Це дозволяє значно спростити розрахункові вирази і прискорити роботу алгоритмів та знизити витрати на реалізацію. Певного спрощення можна також досягти за рахунок застосування фрагментів з кратною шириною. Існують сплайни з нульовою шириною фрагментів (Де Бур). Це призводить до кратності вузлів і можливості наближувати сплайнами з нерозривними фрагментами розривні функції. Розрахункові вирази отримують в результаті граничних переходів. Сплайни можуть мати також фрагменти з нескінченною шириною. Ці фрагменти мають бути крайніми. Іноді це дозволяє природно задати крайові умови.