双变量Legendre多项式拟合寻找正交系数

时间:2014-05-08 21:54:33

标签: python numpy scipy data-fitting

我试图使用正常多项式来拟合双变量多项式的数据。我已经从关于双变量数据拟合的示例开始:Fitting polynomials to data

问题是这些不是正交的,所以系数随着程度的变化而变化。我的计划是使用legendre多项式(构建X和Y多项式,然后采用与我如何构建下面的列表类似的交叉产品),但我仍然坚持如何拟合数据。

def least_sqr(n,degree,x,y,DEL):
    #n==length of list x#
    A = []
    for i in range(n):
        A.append([])
        for xd in range(degree+1):
            for yd in range(degree+1-xd):
                A[i].append((x[i]**xd)*(y[i]**yd)) #f_j(x_i)

    q,_,_,_ = linalg.lstsq(A,DEL)
    return q

def MAIN():
    x,y,delx,dely,n = data_parse(file1, file2, file3, file4);
    degree=3
    q=least_sqr(n,degree,x,y,delx)
    r=least_sqr(n,degree,x,y,dely)  

0 个答案:

没有答案