24小时热门版块排行榜    

北京石油化工学院2026年研究生招生接收调剂公告
查看: 1032  |  回复: 7
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

cheng1378653

兑换贵宾

优秀!!有木有!!!优秀!!有木有!!!优秀!!有木有!!!优秀!!有木有!!!

[求助] matlab M文件 给规定参数设个边界

Sample Text
t=[0.0833 0.5 1 2 4 8];
c=[2.2505 1.6489 0.2789 0.2412 0.1077 0.1035];
我用已知的两个函数模型拟合时出现了这种情况
(一)t=[0.0833 0.5 1 2 4 8];
c=[2.2505 1.6489 0.2789 0.2412 0.1077 0.1035];
myfun=inline('A(1)*exp(-A(2)*x)','A','x');
[A iter sse]=nlinfit(t,c,myfun,[1 1])
结果:A =
2.6400    1.4099
iter =
6
sse =
0.2891
(二):t=[0.0833 0.5 1 2 4 8];
c=[2.2505 1.6489 0.2789 0.2412 0.1077 0.1035];
myfun=inline('A(1)*exp(-A(2)*x)+A(3)*exp(-A(4)*x)','A','x');
[A iter sse]=nlinfit(t,c,myfun,[2.4 1.5 0.022 0.2])
结果:A =
2.6266    1.4510    0.0227   -0.2002
iter =
19
sse =
0.2734
但是我的这个函数有个要求,就是参数A的值要大于零,这样的话A(4)就不符合了
(三)还有一种情况就是,用二的方式,但我给另外的随意的初值,
结果:A =
0.8571    1.4100    1.7829    1.4098 A(1)+A(3)=2.64,A(2)基本上等于A(4)
iter =
6
sse =
0.2891
而这样的话就相当于把(一)的公式拆分成了两个一样模型的函数,与(一)没什么区别,我在用(二)计算式,我希望能够拟合出的结果中A(2)与A(4)不同,但是有还得是正值,所以我想给A(2)和A(4)设边界大于零
该怎么弄,我是matlab的菜鸟用户,请高手帮帮忙,谢谢!

[ Last edited by cheng1378653 on 2013-4-1 at 12:52 ]
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

月只蓝

禁虫

引用回帖:
6楼: Originally posted by cheng1378653 at 2013-04-05 12:21:33
你能告诉我lgycjpcqu是什么吗?我以前没有听过这个。。。...

三楼的同学的名字,他提供的代码就是解决你的问题的。
MATLAB、MS小问题、普通问题请发帖求助!时间精力有限,恕不接受无偿私信求助。
7楼2013-04-05 14:05:26
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 8 个回答

恩斯特

专家顾问

优秀!!有木有!!!优秀!!有木有!!!优秀!!有木有!!!优秀!!有木有!!!

【答案】应助回帖


感谢参与,应助指数 +1
fegg7502: 金币+1, 鼓励交流 2013-04-02 08:58:35
在nlinfit后面的第4个选项可以不填的吗?
2楼2013-04-01 16:19:45
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lgycjpcqu

主管区长

优秀!!有木有!!!优秀!!有木有!!!优秀!!有木有!!!优秀!!有木有!!!


fegg7502: 金币+1, 鼓励交流 2013-04-02 08:58:45
function E=fconstrain(a,t,c)
C=a(1).*exp(-a(2).*t)+a(3).*exp(-a(4).*t);
E=c-C;

命令窗口
clear
a0=[2.4 1.5 0.022 0];
LB=[-inf 0 -inf 0];
UB=[];
t=[0.0833 0.5 1 2 4 8];
c=[2.2505 1.6489 0.2789 0.2412 0.1077 0.1035];
options=optimset('lsqnonlin');
[A norm res ef]=lsqnonlin(@fconstrain,a0,LB,UB,options,t,c);
cfit=A(1).*exp(-A(2).*t)+A(3).*exp(-A(4).*t);
plot(t,c,'*',t,cfit,'rh')
legend('原始数据','拟合数据')
结果是
A =
   2.587176647067854   1.500899543303364  
   0.069042182557558   0.000000000000041

约束.jpg

3楼2013-04-01 19:30:57
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

cheng1378653

超级版主

优秀!!有木有!!!优秀!!有木有!!!优秀!!有木有!!!优秀!!有木有!!!

引用回帖:
2楼: Originally posted by 恩斯特 at 2013-04-01 16:19:45
在nlinfit后面的第4个选项可以不填的吗?

我一直都这么用的,我以为还是初学者
4楼2013-04-02 20:58:53
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 环境工程297分求调剂一志愿杭高院 +10 GENJIOW 2026-03-31 10/500 2026-04-01 01:30 by 1018329917
[考研] 材料调剂 +3 一样YWY 2026-03-31 3/150 2026-03-31 23:02 by wxiongid
[考研] 085602 307分 求调剂 +10 不知道叫什么! 2026-03-26 10/500 2026-03-31 19:53 by Dyhoer
[考研] 求调剂推荐 材料 304 +18 荷包蛋hyj 2026-03-26 18/900 2026-03-31 18:08 by 544594351
[考研] 290分调剂求助 +10 吉祥止止陈 2026-03-25 10/500 2026-03-31 17:54 by 544594351
[考研] 考研生物与医药调剂 +6 铁憨憨123425 2026-03-31 6/300 2026-03-31 17:48 by 544594351
[考研] 0710生物学求调剂! +5 叙述文 2026-03-31 5/250 2026-03-31 17:32 by 唐沐儿
[考研] 一志愿武汉理工,总分321,英一数二,求老师收留。 +12 nnnnnnn5 2026-03-25 12/600 2026-03-31 16:21 by 记事本2026
[考研] 一志愿哈尔滨工业大学材料与化工方向336分 +13 辰沐5211314 2026-03-26 13/650 2026-03-31 14:37 by 记事本2026
[考研] 0856调剂 +6 曲听筠 2026-03-30 6/300 2026-03-31 09:44 by Jaylen.
[考研] 一志愿中海洋320化学工程与技术学硕求调剂 +8 披星河 2026-03-30 8/400 2026-03-31 08:53 by lbsjt
[有机交流] 甲基亚磺磺酸钠和甲基磺酸酯反应机理 10+3 kaobao456 2026-03-29 4/200 2026-03-30 23:16 by nBu锂
[考研] 调剂 +4 GK72 2026-03-30 4/200 2026-03-30 20:32 by dick_runner
[考研] 总分293求调剂 +8 加一一九 2026-03-25 11/550 2026-03-29 19:53 by 无际的草原
[考研] 299求调剂 +10 15188958825 2026-03-25 10/500 2026-03-29 17:51 by 王亮_大连医科大
[考研] 085602 化工专硕 338分 求调剂 +12 路痴小琪 2026-03-27 12/600 2026-03-28 15:41 by L135790
[考研] 283求调剂 +7 A child 2026-03-28 7/350 2026-03-28 12:05 by zllcz
[考研] 一志愿南京航空航天大学材料学硕求调剂 +3 @taotao 2026-03-28 3/150 2026-03-28 10:26 by JourneyLucky
[考研] 求调剂 +4 零八# 2026-03-27 4/200 2026-03-27 18:07 by yu221
[考研] 302求调剂 +4 锦衣卫藤椒 2026-03-25 4/200 2026-03-25 16:29 by 功夫疯狂
信息提示
请填处理意见