#matlab #interpolation #hermite
#matlab #интерполяция #эрмит
Вопрос:
Кто-нибудь знает, где я нахожу алгоритм интерполяции Эрмита в MATLAB. Какой алгоритм интерполяции Эрмита решает эту проблему?
Мне нужно вычислить полином. Пример (просто пример):
x=[1,2,3];
y=[0.5,1,12]
y'=[1,0.2,0.9]
y''=[0.1,0.6,0.8]
x2=[1,1.5,2,2.5,3,3.5];
polynom=hermit_interpolation(x,y,y',y'',x2); % i need the polynom to
y2=polyval(polynom,x2);
plot(x2,y2);
Спасибо за любые ответы.
Ответ №1:
Функция является pchip()
, которая прекрасно документирована с примерами по адресу: http://www.mathworks.com/help/techdoc/ref/pchip.html.
Комментарии:
1. Но pchip() может быть настроен для работы со второй, третьей производной y’,y»,y»»
2. Я думаю, что pchip не может работать со второй или третьей производной.
3. y’ вычисляется внутренне и сохраняется неизменным. Чтобы сохранить y’ и y» одинаковыми, смотрите
spline()
, как предлагает приведенный выше techdoc.