python计算对角线有理函数插值的方法

本文实例讲述了python计算对角线有理函数插值的方法。分享给大家供大家参考。具体实现方法如下:

”’ p = rational(xdata,ydata,x)
evaluates the diagonal rational function interpolant p(x)
that passes through he data points
”’
from numpy import zeros
def rational(xdata,ydata,x):
m = len(xdata)
r = ydata.copy()
rold = zeros(m)
for k in range(m-1):
for i in range(m-k-1):
if abs(x – xdata[i+k+1]) < 1.0e-9: return ydata[i+k+1] else: c1 = r[i+1] - r[i] c2 = r[i+1] - rold[i+1] c3 = (x - xdata[i])/(x - xdata[i+k+1]) r[i] = r[i+1] + c1/(c3*(1.0 - c1/c2) - 1.0) rold[i+1] = r[i+1] return r[0]

希望本文所述对大家的python程序设计有所帮助。

Posted in 未分类

发表评论