matlab实现分段Hermite三次插值

收录时间:2018-12-06
资源分类:Matlab 工具:MATLAB 7.11 (R2010b)

matlab实现分段Hermite三次插值

 

Piecewise Hermite Cubic Interpolation

Piecewise Hermite cubic interpolation between 2 points knowing derivative values

 

Syntax: y=p3hermite(x,pointx,pointy,yprime,plt)

Where

pointx = data points of the independent variable

           (The points do not have to be equally spaced)

pointy = data points of the dependent variable. pointy is the value of

           the function at pointx

yprime = data points of the dependent variable's derivative. yprime is the

           derivative of the function at pointx

x = an arbitrary vector that will be interpolated

plt = If plt is a number greater than 0 it will plot the interpolation

      employing the number in plt as handle for the figure

 

-This function returns the piecewise interpolation "y" of a vector "x".

The algorithm employs two adjacent points (from pointx) and interpolates

with a Hermite cubic polynomial using the function values and the corresponding derivatives.

-pointx, pointy, and yprime must be vectors with the same number of elements.

"x" and "y" have the same number of elements.

 

Written by Juan Camilo Medina 2011

 

Example:

Suppose you have the values of a function "y(x)" at the points xi={0,4,9},

those are yi={2,-2,sqrt(2)} respectively. You also know the values of the

derivative of y(x) at the same points (pointx) yi'=[0,0,-pi/(2*sqrt(2))] respectively.

You want to interpolate within those values with an arbitrary vector "x"

using piecewise cubic Hermite polynomials

Thus:

 

pointx=[0,4,9];

pointy=[2,-2,sqrt(2)]; %function values at pointx

yprime=[0,0,-pi/(2*sqrt(2))]; %derivative of the function at pointx

x=0:0.01:pointx(end); % arbitrary vector to be interpolated

y=p3hermite(x,pointx,pointy,yprime,2);

y_ex=2*cos(pi/4*x); % exact value (y corresponds to y=2*cos(pi/4*x))

plot(x,y_ex,'--k'); axis tight; % plots exact solution for comparison

legend('Interpolation Points','Hermite Interpolation','Exact Value','Location','Southeast')

 

Written by Juan Camilo Medina - The University of Notre Dame

文件下载列表
p3hermite.zip (2.15KB)  
附件内容(只显示2中的1个)
p3hermite.m  
更多

目前尚无评论

用户反馈   关于我们
Copyright (©) ZHIHUISHI.COM 2013 All Rights Reserved.
京ICP备14040384号