24小时热门版块排行榜    

查看: 2461  |  回复: 7
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

bloomi

新虫 (初入文坛)

[求助] matlab非线性分段方程拟合 急~谢谢~ 已有2人参与

初学者求帮忙!
matlab非线性分段方程拟合 急~谢谢~
如图所示是一组非线性分段方程,其中待拟合参数有:T0,Ta,tm,δT,以及分段点ts。
我尝试使用lsqcurvefit进行拟合,但是代码编写有一些问题。。查阅相关资料也不太知道这种分段点就是未知参数的方程应该如何编程,希望大家给予帮助


xdata = [ 5.5000    6.5000    7.5000    8.5000    9.5000   10.5000   11.5000   12.5000 13.5000   14.5000   15.5000   16.5000   17.5000   18.5000   19.5000   20.5000   21.5000   22.5000   23.5000   24.5000    1.5000    2.5000    3.5000    4.5000];
ydata = [299.0545  300.8932  304.5193  308.6715  311.6907  315.0223  315.7924  317.1786  315.0809  313.1319  312.8464  309.4712  305.4651  304.1893  302.5152  301.9055  303.4350  299.9959  299.2613  299.7677  299.4591  298.5113  298.7621  298.6650];
x0 = [299.05  40  14  0.5  17.4];

function F = fun(x,xdata)
if xdata > x(5)
    w = 4/3*(x(3) - 5.4);
    F = a + b*cos( 3.14/w.*( xdata -c ) );
elseif xdata <= x(5)
    w = 4/3*(c - 5.4);
    k = w/3.14 * ( atan( 3.14/w*(x(5)-x(3)) ) - d/b*asin( 3.14/w*( x(5)-x(3) ) ) );
    F = a + d + ( b*cos( 3.14/w*(ee-c) ) - d ) * k/( k + xdata - ee );
end
end

[x,resnorm] = lsqcurvefit(@fun,x0,xdata,ydata);

这样运行之后会报错:
Error using feval
Output argument "F" (and maybe others)
not assigned during call to
"F:\DTC\pros\fun1012.m>fun1012".

Error in lsqcurvefit (line 203)
            initVals.F =
            feval(funfcn_x_xdata{3},xCurrent,XDATA,varargin{:});
            
Caused by:
    Failure in initial user-supplied
    objective function evaluation.
    LSQCURVEFIT cannot continue.

最后应该就是没有F的返回值了。。。我这个语句写的应该是肯定有问题但是我不太知道是什么问题。。希望能够请高人指点一下 谢谢!!!!!
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

戴钢盔的猪头

木虫 (知名作家)

【答案】应助回帖

引用回帖:
4楼: Originally posted by 戴钢盔的猪头 at 2014-10-14 15:48:59
分段函数最小二乘拟合目标函数导数不连续,可采用两段函数的加权加和作为拟合模型。加权因子假设分别为a和b,可设计连续光滑函数作为加权因子。这个函数需要表现出阶越性,可采用某个三角函数。三角函数都是初等函数 ...

补充a和b不是同一个函数,但用到同一个三角函数。

[ 发自手机版 http://muchong.com/3g ]
5楼2014-10-14 15:50:21
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 8 个回答

月只蓝

主管区长 (职业作家)

【答案】应助回帖

感谢参与,应助指数 +1
推荐用1stopt软件来做。
MATLAB、MS小问题、普通问题请发帖求助!时间精力有限,恕不接受无偿私信求助。
2楼2014-10-13 09:56:31
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

bloomi

新虫 (初入文坛)

引用回帖:
2楼: Originally posted by 月只蓝 at 2014-10-13 09:56:31
推荐用1stopt软件来做。

因为要批量做,有2000多这样的方程需要拟合,(xdata ydata值不一样)所以希望写到程序里去
3楼2014-10-13 12:02:24
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

戴钢盔的猪头

木虫 (知名作家)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
bloomi: 金币+10, ★★★★★最佳答案 2014-10-15 10:09:56
分段函数最小二乘拟合目标函数导数不连续,可采用两段函数的加权加和作为拟合模型。加权因子假设分别为a和b,可设计连续光滑函数作为加权因子。这个函数需要表现出阶越性,可采用某个三角函数。三角函数都是初等函数,连续可导,故可设计加权函数满足:当t小于ts时,a=1,b=0,否则a=0,b=1。具体哪个三角函数呢?楼主自己去研究下吧,授人以鱼不如授人以渔。这个方法分两段,分多段都可以用。

[ 发自手机版 http://muchong.com/3g ]
4楼2014-10-14 15:48:59
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[论文投稿] 售一区SCI文章T0P,我:8O.551.O54,科目全,可十急 +3 2JOx3r2CYEgw 2026-08-22 5/250 2026-08-23 03:52 by OEbVnUOu01ol
[考博] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +3 2JOx3r2CYEgw 2026-08-21 9/450 2026-08-23 03:31 by OEbVnUOu01ol
[论文投稿] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 +3 QTy3jDtz1uLt 2026-08-21 9/450 2026-08-23 03:04 by OEbVnUOu01ol
[基金申请] 2026国自然函评费到账 +11 羊腰板 2026-08-21 11/550 2026-08-22 22:03 by lsbin3733
[基金申请] 范进中举一文的中心思想 +3 zjuhero 2026-08-22 4/200 2026-08-22 20:02 by mycsru
[基金申请] 什么时候开奖? +7 CrisMessi 2026-08-18 8/400 2026-08-22 18:29 by 淀粉搬运工
[教师之家] 售一区SCI文章T0P,我:8O.551.O54,科目全,可十急 +4 2JOx3r2CYEgw 2026-08-21 4/200 2026-08-22 16:52 by sunzitan
[基金申请] 人气不行了 +8 fansofjerry 2026-08-21 8/400 2026-08-22 16:30 by zyqchem
[基金申请] 时间戳今天,20号变了 +5 archvillain 2026-08-20 5/250 2026-08-22 06:12 by hui_daxiao
[基金申请] 今日不放榜?网传国自然预计 8 月 27 日可查结果 +16 医学老男孩 2026-08-20 20/1000 2026-08-21 21:13 by Ldrop2023
[基金申请] 科研孤儿太难了 +17 我4大白菜 2026-08-20 18/900 2026-08-21 20:57 by zhangev
[基金申请] 看来今天不会放榜了? +8 chengyan1220 2026-08-21 11/550 2026-08-21 17:52 by dcqxinyang
[基金申请] 感觉是下周放榜了 +7 angus9576 2026-08-17 12/600 2026-08-21 13:38 by weiyin
[论文投稿] 投稿咨询 +5 wwm09 2026-08-17 7/350 2026-08-21 10:11 by 期刊论文帮手
[基金申请] 基金啊基金 +4 longfie172 2026-08-20 4/200 2026-08-21 08:58 by mark mao
[基金申请] 估计是周四 +3 archvillain 2026-08-18 3/150 2026-08-21 01:48 by jnhyjjm
[基金申请] 时间戳变了,能看出什么问题? +18 基诺咪客 2026-08-17 23/1150 2026-08-20 17:19 by Godzela
[基金申请] 今天放榜吗? +14 布布和一二 2026-08-19 15/750 2026-08-19 18:07 by gltch
[基金申请] 朋友圈看到的 +6 wangzilk 2026-08-18 8/400 2026-08-19 10:55 by Haru815
[基金申请] 今天维护系统维护 祝所有人 高中 +8 gjjjzhong 2026-08-18 9/450 2026-08-18 13:01 by 家与远方
信息提示
请填处理意见