Python插值:方法的精度?

Python插值:方法的精度?,python,scipy,interpolation,Python,Scipy,Interpolation,有3种受支持的方法: 支持“线性”和“最近”以及“splinef2d”。“splinef2d”仅支持二维数据 在中,它被解释为多项式插值,我认为应该比线性插值更精确 所以这里有两个问题: 什么是splinef2d?这是wikiversity链接中的一个 3种可用方法中哪一种插值更精确?最近的,双线性还是splinef2d 这需要更多地挖掘scipy。splinef2d方法实质上是将数据拟合到曲面。您需要进一步探索的方法是。这围绕FITPACK的子例程展开。据我所知,变量类型为real。对于默认的

有3种受支持的方法:

支持“线性”和“最近”以及“splinef2d”。“splinef2d”仅支持二维数据

在中,它被解释为多项式插值,我认为应该比线性插值更精确

所以这里有两个问题:

  • 什么是splinef2d?这是wikiversity链接中的一个
  • 3种可用方法中哪一种插值更精确?最近的,双线性还是splinef2d

  • 这需要更多地挖掘
    scipy
    splinef2d
    方法实质上是将数据拟合到曲面。您需要进一步探索的方法是。这围绕FITPACK的子例程展开。据我所知,变量类型为
    real
    。对于默认的编译器设置,这意味着它的
    real(kind=8)
    ,因此您看到的是
    double
    精度。这可能会传染,因此python也处理相同的精度

    现在可以重复此练习,以了解线性插值的详细信息。根据我从他们的git回购中看到的情况,它的精确度似乎是双倍的

    在python方面,变量声明为
    float
    ,文档说明:

    在运行Python的典型机器上,有53位精度 可用于Python浮点


    关于包装函数的精度,默认情况下python的
    float
    具有双精度。查看此链接。

    您的第一个链接指向特定模块提供的特定方法;这不是一般的Python概念。该方法的一个参数可以取值
    “linear”
    “nearest”
    ,或
    “splinef2d”
    。这是我正在使用的当前方法。所以我对完全理解方法很感兴趣,特别是精确性。“精确性”只适用于您正在调用的方法。或者你在问不同的插值技术本身,这与Python无关?不同的插值技术。我在Python文档中找不到确切的“splinef2d”(列表中的Q1)。