24小时热门版块排行榜    

查看: 3469  |  回复: 10
本帖产生 1 个 程序强帖 ,点击这里进行查看
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

yangger

新虫 (初入文坛)

[求助] 急切求助用matlab曲线拟合色散方程

现在有如下色散方程:

y^2 =  A + B/(x^2-C) - D x^2   ----------------Eq. 1

其中A,B, C, D为待定系数,现在有(x,y)的一组实验值; 如何得到最佳的A、B、C、D


我的思路如下:

step1 通过四对(x_i,y_i) 得到 A,B,C,D 值,
step2 代入Eq.1 输入x实验值,得到y拟合值,
step3 判断y拟合值和y实验值差值,
step4 如果差值大于10^-4则调节A,B,C,D;
step5 用新的ABCD,返回到step2

现在遇到的问题是 1.不收敛
                 2. 调节过的A,B,C,D有时候使得Eq.1方程右边小于零

求助:要是用matlab如何处理,

[ Last edited by yangger on 2011-6-3 at 12:53 ]
回复此楼
fd
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

杨小胖

金虫 (正式写手)


dubo(金币+1): 谢谢参与 2011-06-04 14:34:31
你说的这step1到step4其实在matlab中直接用polyfit和polyval这个函数不就可以实现了吗?
而且step4其实就是误差棒。
你再找找help里面的例子吧。我现在电脑上没有相关的代码。
回头贴出来。
人生中最辉煌的不是功成名就的时候,而是在失败和挫折中看到希望并为之奋斗的日子
3楼2011-06-04 13:36:21
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 11 个回答

smithjohn

金虫 (正式写手)

【答案】应助回帖


dubo(金币+1): 谢谢参与 2011-06-04 14:34:19
加上几十上百组数不就over了?
为什么要一个一个的加啊,就算验证的话也不用这样吧?
2楼2011-06-03 23:28:10
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dubo

金虫 (著名写手)

优秀版主

【答案】应助回帖


余泽成(金币+1): 谢谢参与应助! 2011-06-04 19:29:51
楼上我的很对,MATLAB直接就可以拟合的
要么你把数据贴上来,我给你拟合一下
4楼2011-06-04 14:39:09
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dubo

金虫 (著名写手)

优秀版主

【答案】应助回帖

★ ★
余泽成(金币+2, 程序强帖+1): 谢谢参与应助! 2011-06-04 19:30:05
yangger(金币+3): 非常感谢~~@ 2011-06-17 19:02:33
或者你仿照这个代码改改
function y = fitme_diheral( c,phi )
% A1=c(1);
% k1=c(2);
% x1=c(3);
% kBT=443*8.3145/1000;
aa=c(1);
bb=c(2);
cc=c(3);
dd=c(4);
ee=c(5);
ff=c(6);
psi=(phi-pi);
% y=0.5*(f1*(1+cosx)+f2*(1-cos(2*x))+f3*(1+cos(3*x))+f4*(1-cos(4*x)));
y=aa-bb.*cos(psi)+cc.*(cos(psi)).^2-dd.*(cos(psi)).^3+ee.*(cos(psi)).^4-ff.*(cos(psi)).^5;
end



clear;
clc;
load diherals.txt;
data=diherals;
%%avge the theta<0 and theta>0
a=data(1:180,2);
b=data(361:-1:182,2);
avg=0.5*(a+b);
data(1:180,2)=avg;
data(361:-1:182,2)=avg;

p=[24.5156799887984,-1.90007004205358,-1.66217137679272,3.06265999012061,2.33333792446086,-2.48454162655902;];
% data(:,2)=acf(data(:,2));
data3=data;
data3(:,1)=data3(:,1)*pi/180;

for i=1:50
%     [p,res]=lsqcurvefit('dihe',p,data3(:,1),data3(:,2));
    [p,res]=lsqcurvefit('fitme_diheral',p,data3(:,1),data3(:,2));
    %注意修改函数名dihe
    plot(data3(:,1),data3(:,2),'ro');
    hold on
    plot(data3(:,1),fitme_diheral(p,data3(:,1)));
     %注意修改函数名dihe(p,data3(:,1)
end
5楼2011-06-04 14:39:52
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 296求调剂 +4 www_q 2026-03-18 8/400 2026-03-20 12:12 by 学员8dgXkO
[考研] 304求调剂 +5 曼殊2266 2026-03-18 5/250 2026-03-20 09:00 by ZHANG0tao
[考研] 329求调剂 +6 想上学吖吖 2026-03-19 6/300 2026-03-20 09:00 by 每天只摆一小会
[考研] 286求调剂 +6 lemonzzn 2026-03-16 10/500 2026-03-19 14:31 by lemonzzn
[考研] 化学求调剂 +3 临泽境llllll 2026-03-17 4/200 2026-03-19 13:59 by houyaoxu
[考研] 332求调剂 +3 ydfyh 2026-03-17 3/150 2026-03-19 10:14 by 功夫疯狂
[考研] 304求调剂 +6 司空. 2026-03-18 6/300 2026-03-18 23:03 by 星空星月
[考研] 材料工程专硕调剂 +5 204818@lcx 2026-03-17 6/300 2026-03-18 22:55 by 204818@lcx
[考研] 295求调剂 +3 一志愿京区211 2026-03-18 5/250 2026-03-18 17:03 by zhaoqian0518
[考研] 280求调剂 +6 咕噜晓晓 2026-03-18 7/350 2026-03-18 11:25 by 无际的草原
[考研] 材料,纺织,生物(0856、0710),化学招生啦 +3 Eember. 2026-03-17 9/450 2026-03-18 10:28 by Eember.
[考研] 326求调剂 +5 上岸的小葡 2026-03-15 6/300 2026-03-17 17:26 by ruiyingmiao
[考研] 275求调剂 +4 太阳花天天开心 2026-03-16 4/200 2026-03-17 10:53 by 功夫疯狂
[考研] 283求调剂 +3 听风就是雨; 2026-03-16 3/150 2026-03-17 07:41 by 热情沙漠
[考研] 东南大学364求调剂 +5 JasonYuiui 2026-03-15 5/250 2026-03-16 21:28 by 木瓜膏
[考研] 药学383 求调剂 +3 药学chy 2026-03-15 4/200 2026-03-16 20:51 by 元子^0^
[考研] 0854控制工程 359求调剂 可跨专业 +3 626776879 2026-03-14 9/450 2026-03-16 17:42 by 626776879
[基金申请] 今年的国基金是打分制吗? 50+3 zhanghaozhu 2026-03-14 3/150 2026-03-16 17:07 by 北京莱茵润色
[考研] 304求调剂 +4 ahbd 2026-03-14 4/200 2026-03-16 16:48 by 我的船我的海
[考研] 0856求调剂 +3 刘梦微 2026-03-15 3/150 2026-03-16 10:00 by houyaoxu
信息提示
请填处理意见