numpy如何决定平滑二变量样条中的系数?

时间:2014-10-07 07:36:54

标签: python-2.7 scipy interpolation

我正在使用numpy库的SmoothBivariateSpline来获取数据的表面拟合。

默认情况下,双变量样条的度数是3.当我拟合数据时,如果度数是3,我应该分别在x和y方向上得到16个系数和8个结点。其中一个样条拟合(f1)正在发生这种情况。但是我得到25个系数和9个结点用于第二次拟合(f2)。

有人可以告诉我为什么我会得到更多的系数?如果你想我也可以分享我的数据文件。

这是我的代码

import numpy as np
# loading the txt file from where i am reading data
L = np.loadtxt('DATA_File_PT.txt')

P = L[:,0]  # pressure
T = L[:,1]  # temperature
H = L[:,2]  # enthalpy
Rho = L[:,3] # density


# fitting Spline for each set (I have P and T as independent variable, H and Rho are dependent)

f1 = interpolate.SmoothBivariateSpline(P, T, H, kx=3, ky=3)
f2 = interpolate.SmoothBivariateSpline(P, T, Rho, kx=3, ky=3)

o1=f1.get_knots()
coeff1 = f1.get_coeffs()

o2=f2.get_knots()
coeff2 = f2.get_coeffs()

0 个答案:

没有答案