| 查看: 470 | 回复: 1 | |||
[交流]
【求助】matlab 拟合问题
|
|
自变量t是时间,一维数组; 因变量c是浓度,包含2种,一个是料液相浓度,另一个是接受相浓度,二维数组。 c1=g(K1,K2,t), c2=G(K1,K2,t); g和G是不同的函数。 现在有实验数据t和c=[c1 c2]; 请问如何在matlab中编程对参数K1,K2进行非线性拟合? 注意,K1,K2在c1,c2中都出现了,所以2个函数需要同时拟合。我在用nlinfit函数时发现好像只能对一个因变量进行拟合。 敬请赐教!谢谢 |
» 猜你喜欢
存款400万可以在学校里躺平吗
已经有15人回复
拟解决的关键科学问题还要不要写
已经有6人回复
Materials Today Chemistry审稿周期
已经有6人回复
基金委咋了?2026年的指南还没有出来?
已经有10人回复
基金申报
已经有6人回复
推荐一本书
已经有13人回复
国自然申请面上模板最新2026版出了吗?
已经有17人回复
纳米粒子粒径的测量
已经有8人回复
疑惑?
已经有5人回复
计算机、0854电子信息(085401-058412)调剂
已经有5人回复
» 本主题相关价值贴推荐,对您同样有帮助:
请教matlab反应动力学参数估计遇到的问题,谢谢
已经有15人回复
matlab拟合方程参数时初值的选择
已经有15人回复
matlab拟合求值
已经有17人回复
在matlab中拟合曲面的表达式
已经有29人回复
matlab 求指点 动力学方程拟合过程中导数的获取
已经有10人回复
matlab拟合拟均相动力学参数
已经有6人回复
需要用matlab拟合数据的外行人急需帮助
已经有10人回复
matlab非线性参数拟合问题
已经有7人回复
【求助】matlab曲面拟合表达式
已经有10人回复
【求助】使用Matlab拟合反应动力学方程问题
已经有7人回复
» 抢金币啦!回帖就可以得到:
辽宁材料实验室高热通量框架复合材料方向招聘科研骨干2名(长期有效)
+5/280
双一流南京医科大学招计算机、AI、统计、生物信息等方向26年9月入学博士
+1/74
哈尔滨工业大学王东博课题组/中科院上海微系统所梁丽娟课题组招收2026年博士生1名
+1/72
西南大学化学化工学院彭云贵教授课题组招有机化学博士研究生
+2/62
香港理工大学招收电力系统优化及运筹学博士后
+1/56
广州,真诚找对象
+1/54
211双一流北京工业大学招计算机、AI、自动控制、电子信息等方向博士生(长期有效)
+1/42
Win10系统Xshell窗口小、无法移动、不显示工具栏的一个解决办法
+1/38
华中农大生物催化组招26年博士:代谢工程、酵母工程、药学、有机、酶工程、计算模拟
+1/30
沈阳征女友
+1/30
云南大学智能光电子课题组招收申请-考核博士研究生1名(光电、光学)
+1/27
江西理工大学稀土学院稀土发光材料研究所招收2026届材料科学与工程专业博士研究生2名
+2/8
武汉双一流高校干细胞与肿瘤生物学团队招聘2026级申请考核制博士生
+1/8
[请教]审稿意见回复
+1/6
南京林业大学木质纤维功能材料国际联合创新中心招收2026级博士生(申请-考核制)
+2/6
山东大学(青岛校区)招博士后(COF\MOF\催化\电池)
+1/6
山东师范大学海外优青(校长团队)招聘硕士/博士/博后
+1/6
【博士后/科研助理招聘-北京理工大学-集成电路与电子学院-国家杰青团队】
+1/4
国家计量院(北京)医学中心招聘博后--眼科光学医疗器械研发及标准化研究
+1/3
南京邮电大学材料科学与工程学院柔性电子研究所2026年招聘公告
+1/2
flyinuniverse58(金币+10):虽然和我的目标有些距离,但还是感谢你为我提供了思路(我在题目中说了y是2个不同的函数,不是x) 2010-11-19 14:50:25
flyinuniverse58(金币+10):没人回复了,都给你吧,谢谢 2010-12-23 08:10:11
flyinuniverse58(金币+10):没人回复了,都给你吧,谢谢 2010-12-23 08:10:11
|
请楼主 依葫芦画瓢,保证算的出来!! 1 设定目标函数. (M函数书写)% 可以是任意的 例如: function f=mydata(a,data) %y的值目标函数值 或者是第三维的,a=[a(1) ,a(2)] 列向量 x=data(1, ; %data 是一2维数组,x=x1y=data(2, ; %data 是一2维数组,x=x2 f=a(1)*x+a(2)*x.*y; %这里的a(1), a(2)为目标函数的系数值。 f的值相当于ydata的值 2 然后给出数据xdata和ydata的数据和拟合函数lsqcurvefit 例如: x1=[1.0500 1.0520 1.0530 1.0900 1.0990 1.1020 1.1240 1.1420... 1.1490 1.0500 1.0520 1.0530 1.0900 1.0990 1.1020 1.1240 1.1420 1.1490]; x2=[3.8500 1.6500 2.7500 5.5000 7.7000 3.3000 4.9500 8.2500 11.5500... 1.6500 2.7500 3.8500 7.7000 3.3000 5.5000 8.2500 11.5500 4.9500]; ydata=[56.2000 62.8000 62.2000 40.8000 61.4000 57.5000 44.5000 54.8000... 53.9000 64.2000 62.9000 64.1000 63.0000 62.2000 64.2000 63.6000... 52.5000 62.0000]; data=[x1;x2]; %类似于将x1 x2整合成一个2维数组。 a0= [-0.0014,0.07]; option=optimset('MaxFunEvals',5000); format long; [a,resnorm]=lsqcurvefit(@mydata,a0,data,ydata,[],[],option); yy=mydata(a,data); result=[ydata' yy' (yy-ydata)'] % a的值为拟合的目标函数的参数值 利用lsqcurvefit进行拟合的 它完整的语法形式是: % [x,resnorm,residual,exitflag,output,lambda,jacobian] =lsqcurvefit(fun,x0,xdata,ydata,lb,ub,options) |
2楼2010-11-19 10:19:10











回复此楼
; %data 是一2维数组,x=x1