h****a 发帖数: 580 | 1 向各位牛人请教一个问题:
现有一套数据(x[m],y[n],z[m,n]),其中x[m]和y[n]是参数,z[m,n]是(x[m],y[n])
相对应的值,m从1到M,n从1到N,一共有M*N个数据点.
根据我的观测和初步检验,我认为下面的方程可以很好地拟合(fit)这些数据:
z=f(x,y)=a11*x^2*y^2+a12*x^2*y+a13*x^2+a21*x*y^2+a22*x*y+a23*x+a31*y^2+a32*y
+a33
现在的问题是,如何准确地得到方程中的系数coeffients(a11,a12,a13,a21,a22,a23,
a31,a32,a33)?
据我所知,对于二维数据(x[i],y[i]), 很容易用方程y=f(x)来拟合,有很多工具(
gnuplot,xmgrace)可以做到。但是对于三维数据(x[m],y[n],z[m,n]),请问有什么现
成的工具可以用来拟合?若是没有现成的工具,我需要自己写程序,该如何着手?
我在网上搜索“least-squares fitting”,找到一些说明和子程序,但全都是用y=f(x
)来拟合数据(x,y),没有用z= | j*****h 发帖数: 2577 | 2 自己编程做,很容易啊
*y
a23,
【在 h****a 的大作中提到】 : 向各位牛人请教一个问题: : 现有一套数据(x[m],y[n],z[m,n]),其中x[m]和y[n]是参数,z[m,n]是(x[m],y[n]) : 相对应的值,m从1到M,n从1到N,一共有M*N个数据点. : 根据我的观测和初步检验,我认为下面的方程可以很好地拟合(fit)这些数据: : z=f(x,y)=a11*x^2*y^2+a12*x^2*y+a13*x^2+a21*x*y^2+a22*x*y+a23*x+a31*y^2+a32*y : +a33 : 现在的问题是,如何准确地得到方程中的系数coeffients(a11,a12,a13,a21,a22,a23, : a31,a32,a33)? : 据我所知,对于二维数据(x[i],y[i]), 很容易用方程y=f(x)来拟合,有很多工具( : gnuplot,xmgrace)可以做到。但是对于三维数据(x[m],y[n],z[m,n]),请问有什么现
| h****a 发帖数: 580 | 3 老大能否多给一点提示,该有些怎样的步骤,需要那些方法(算法)?
【在 j*****h 的大作中提到】 : 自己编程做,很容易啊 : : *y : a23,
| h****l 发帖数: 7290 | 4 用类似二分法就行,如果二分法都懒的用,就用最简单的方法,试算,给一系列个参数
的值,看哪种组合最好,可能会很慢,算个几天,呵呵。
*y
a23,
【在 h****a 的大作中提到】 : 向各位牛人请教一个问题: : 现有一套数据(x[m],y[n],z[m,n]),其中x[m]和y[n]是参数,z[m,n]是(x[m],y[n]) : 相对应的值,m从1到M,n从1到N,一共有M*N个数据点. : 根据我的观测和初步检验,我认为下面的方程可以很好地拟合(fit)这些数据: : z=f(x,y)=a11*x^2*y^2+a12*x^2*y+a13*x^2+a21*x*y^2+a22*x*y+a23*x+a31*y^2+a32*y : +a33 : 现在的问题是,如何准确地得到方程中的系数coeffients(a11,a12,a13,a21,a22,a23, : a31,a32,a33)? : 据我所知,对于二维数据(x[i],y[i]), 很容易用方程y=f(x)来拟合,有很多工具( : gnuplot,xmgrace)可以做到。但是对于三维数据(x[m],y[n],z[m,n]),请问有什么现
|
|