问题简单,但做起来很难!已知输入n个点(x,y坐标值),要求出其中x与y之间的函数!(200分)

X

xzyxm

Unregistered / Unconfirmed
GUEST, unregistred user!
有一台仪器, x值与y值是有一定的曲线关系,n个坐标点是从仪器上抄下来的。
要从已知的n个(可以是10或20个)x,y坐标点中找出其中的关系,这样如果知道第(n+1)个点的x值,就可求出y值。
我无从下手,请指示!纯是数学问题。。。
 
不知matlab能否办到。
 
如果函数曲线类似直线,指数函数,对数函数,幂函数的话,可以考虑用最小二乘法
最好自己先画一下坐标图,用线连一下,也许可以发现他们的关系
不过,现在的仪器指数曲线比较多,可能还有一些常数项
 
to hermes:
Matlab,Math4之类应该是可以办到的
纯数学解法可用拉格朗日插值定理,定理本身我忘了
 
你撞倒枪口上了,我就是干这个专业的。可以拟和任何方程。
写过不少算法的代码,哈哈,晕死。代码不能给你。
首先确定你的数学模型,然后在写程序拟和。
如果你的数据点可能适合多个模型,那么可以选择自动寻找模型。
模型比较使用残差,AIC值

拟和数学的方法:
单纯型
共轭梯度
牛顿类算法
模拟退火
遗传算法都可以
 
可以用拉格朗日插值多项式。
已知坐标(X0,Y0),(X1,Y1),…(Xn,Yn)
先求基函数 Li(X)=[(X-X0)*(X-X1)*…*(X-Xi-1)(X-Xi+1)*…*(X-Xn)]/[(Xi-X0)*(Xi-X1)*…*(Xi-Xi-1)(Xi-Xi+1)*…*(Xi-Xn)],(i=0,1,2,…,n)
可以得到曲线方程Y=Y0*L0(X)+Y1*L1(X)+…+YnLn(X)
 
找一本《数值逼近》的书看看,里面有很多方法,我就是数学专业的,呵呵
 
试一下一个叫NeuralPower的软件,能同时分析30余种常用函数,也能用遗传算法,粒子群算法等拟何任何你设定的函数。
 
to all
谢谢大家的帮助,小弟不才,还是不知从哪下手。
 
多人接受答案了。
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
I
回复
0
查看
713
import
I
I
回复
0
查看
878
import
I
I
回复
0
查看
569
import
I
顶部