24小时热门版块排行榜    

查看: 795  |  回复: 2

啊蓝若

新虫 (小有名气)

[求助] matlab非线性拟合 已有1人参与

matlab和origine自定义函数非线性模拟,拟合的初始值大于实验值,怎么把拟合初始值降下来呢?比如是否可以设定边界条件,如何设置,谢谢高人指点
x =[0,5,10,15,20,25];
y =[100,99,99,95.2,88.8,82];
f=@(a, x) a(1)./ (2*exp(a(2).*(x-a(3))))
[a, res]=lsqcurvefit(f,[99,0.1,15], x, y);
y1=f(a, x);
plot(x,y,'o', x,y1)
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

月只蓝

主管区长 (职业作家)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
啊蓝若: 金币+20, ★★★★★最佳答案, 谢谢您提供的方法,我试了一下强制拟合过第一个点,出来的也是大于100的,您能试着帮我做一下吗?我追加金币或者有偿服务也可以,万分感谢 2016-04-25 15:27:03
强制拟合的曲线通过第一个点可以。
此外,你的拟合公式有问题,存在过拟合,a1和a2可以合并成一个参数,否则有无穷多种拟合结果。
MATLAB、MS小问题、普通问题请发帖求助!时间精力有限,恕不接受无偿私信求助。
2楼2016-04-24 22:54:05
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

新生消消乐

金虫 (正式写手)

引用回帖:
2楼: Originally posted by 月只蓝 at 2016-04-24 22:54:05
强制拟合的曲线通过第一个点可以。
此外,你的拟合公式有问题,存在过拟合,a1和a2可以合并成一个参数,否则有无穷多种拟合结果。

咨询下,如果公式中有两个一个y,两个X公式,要怎么拟合公式?就是一个值与多个参数有关。麻烦解答下,多谢
3楼2018-11-07 13:49:25
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 啊蓝若 的主题更新
信息提示
请填处理意见