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

yipeiwu_com6年前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程序设计有所帮助。

相关文章

Python数据类型之Number数字操作实例详解

本文实例讲述了Python数据类型之Number数字操作。分享给大家供大家参考,具体如下: 一、Number(数字) 数据类型 为什么会有不同的数据类型? 计算机是用来做数学计算的机器,...

在Linux下调试Python代码的各种方法

 这是一个我用于调试或分析工具概述,不一定是完整全面,如果你知道更好的工具,请在评论处标记。 日志 是的,的确,不得不强调足够的日志记录对应用程序是多么的重要。您应该记录重要的...

Python Pandas 转换unix时间戳方式

Python Pandas 转换unix时间戳方式

使用pandas自带的pd.to_datetime把 unix 时间戳转为时间时默认是转换为 GMT标准时间   北京时间比这个时间还要加 8个小时, 使用pyth...

使用Python中的greenlet包实现并发编程的入门教程

1   动机 greenlet 包是 Stackless 的副产品,其将微线程称为 “tasklet” 。tasklet运行在伪并发中,使用channel进行同步数据...

python中正则表达式的使用方法

本文主要关于python的正则表达式的符号与方法。 findall: 找寻所有匹配,返回所有组合的列表 search: 找寻第一个匹配并返回 sub: 替换符合规律的内容,并返回替换后的...