Matlab справка

yi = interp1(x, y, xi) yi = interp1(x, y, xi, ‘’)

Функцията yi = interp1(x, y, xi) изгражда интерполираща крива за едномерен масив y, даден върху решетка x; изходният масив yi може да бъде дефиниран на по-фина мрежа xi. Ако Y е двуизмерен масив, тогава за всяка колона се изгражда интерполираща крива. Линейната интерполация е реализирана по подразбиране.

Функцията yi = interp1(x, y, xi, ‘ ‘) ви позволява да зададете метода на интерполация:

"линеен"линеен
'кубичен'кубичен
"сплайн"кубични сплайни

Приема се, че аргументът x се променя монотонно; в допълнение, за кубична интерполация се приема, че мрежата в x е равномерна.

Пример:

Ние дефинираме синусоида само с 10 точки и интерполираме с помощта на фина решетка.

х = 0:10; y = sin(x); xi = 0:.25:10; yi = interp1(x, y, xi); plot(x, y, 'o', xi, yi, 'g'), задръжте yi = interp1(x, y, xi, 'spline'); графика (x, y, 'ob', xi, yi, 'm'), решетка, задържане

интерполация

Методите за линейна и кубична интерполация са доста лесни за изпълнение; Що се отнася до сплайн интерполацията, в този случай се използват помощни функции ppval, mkpp, unmkpp, които образуват малък пакет за работа с гладки полиноми на части.

Значително по-големи възможности за потребителите за решаване на проблеми с интерполация и апроксимация предоставя специализираният пакет Spline Toolbox [1].

1. Кутия с инструменти за сплайни. Ръководство на потребителя. Natick: The MathWorks, Inc., 1992 г.