Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 工程数学软件 > MATLAB论坛
MATLAB论坛 一切MATLAB相关问题在此讨论。
回复
 
主题工具 显示模式
旧 2008-04-29, 09:53   #1
心际依然
初级会员
 
注册日期: 2008-04-15
年龄: 39
帖子: 27
声望力: 18
心际依然 正向着好的方向发展
默认 [求助]曲线拟合的问题

已知函数x=exp(q/tan(B))*cos(q-qa)+pa*sin(q-qa+B);
y=exp(q/tan(B))*sin(q-qa)-pa*cos(q-qa+B);
其中只有q是变量,且q=[1.3,1.5];B,qa,pa都是常量;
现在要把x,y拟合为以下的函数形式:
x=exp(q/tan(B+tB))*cos(q+tq);
y=exp(q/tan(B+tB))*sin(q+tq);
怎么求出tBtq呢?
如果用 p = curvefit(‘Fun’p0,xdata,ydata)这个,具体要怎么写.
我的x,y都是隐函数.
心际依然 当前离线   回复时引用此帖
旧 2008-04-29, 15:00   #2
watcher
高级会员
 
注册日期: 2008-04-02
年龄: 47
帖子: 175
声望力: 21
watcher 正向着好的方向发展
默认

1,由q=[1.3,1.5]获得x,y的离散序列
2,由x=exp(q/tan(B+tB))*cos(q+tq);y=exp(q/tan(B+tB))*sin(q+tq);得到
atan(y/x)=q+tq%线性拟合截距
ln(x^2+y^2)=q/tan(B+tB)%线性拟合斜率

不知道可不可以,呵呵
watcher 当前离线   回复时引用此帖
旧 2008-04-30, 13:27   #3
心际依然
初级会员
 
注册日期: 2008-04-15
年龄: 39
帖子: 27
声望力: 18
心际依然 正向着好的方向发展
默认

1,由q=[1.3,1.5]获得x,y的离散序列
2,由x=exp(q/tan(B+tB))*cos(q+tq);y=exp(q/tan(B+tB))*sin(q+tq);得到
atan(y/x)=q+tq%线性拟合截距
ln(x^2+y^2)=q/tan(B+tB)%线性拟合斜率

你的意思是这样吗?
令x1=q;
y1=atan(y/x)+ln(x^2+y^2)=q+tq+2q/tan(B+tB)=(1+2/tan(B+tB))*x+tq
p=polyfit(x1y11);
求出来的p(1)=1+2/tan(B+tB)
p(2)=tq
心际依然 当前离线   回复时引用此帖
旧 2008-05-01, 20:56   #4
watcher
高级会员
 
注册日期: 2008-04-02
年龄: 47
帖子: 175
声望力: 21
watcher 正向着好的方向发展
默认

right
:smile:
watcher 当前离线   回复时引用此帖
旧 2008-05-04, 10:24   #5
心际依然
初级会员
 
注册日期: 2008-04-15
年龄: 39
帖子: 27
声望力: 18
心际依然 正向着好的方向发展
默认

这样求出来误差很大,2条曲线差很多呀。好像是累积了很多误差
心际依然 当前离线   回复时引用此帖
旧 2008-05-05, 14:40   #6
zhanhuichong
普通会员
 
注册日期: 2008-04-04
年龄: 38
帖子: 46
声望力: 20
zhanhuichong 是一个将要出名的人zhanhuichong 是一个将要出名的人
默认

使用lsqcurvefit进行最小二乘拟合
zhanhuichong 当前离线   回复时引用此帖
回复


发帖规则
不可以发表新主题
不可以发表回复
不可以上传附件
不可以编辑自己的帖子

启用 BB 代码
论坛启用 表情符号
论坛启用 [IMG] 代码
论坛禁用 HTML 代码


相似的主题
主题 主题作者 版面 回复 最后发表
【求助】超越方程组的fsolve解法 小妮妮 MATLAB论坛 3 2008-09-21 20:11
急求小波分解程序 sameni123 MATLAB论坛 0 2008-05-25 08:02
【求助】如何求解如下方程? woshizhuqiqi MATLAB论坛 1 2007-12-20 22:00
留学美国行李清单 labfans MATLAB新闻聚合 0 2007-11-20 15:15
【求助】如何计算离散曲线的曲率半径 sophiemarceau MATLAB论坛 0 2007-08-22 19:40


所有时间均为北京时间。现在的时间是 19:57


Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.