| 查看: 352 | 回复: 0 | ||
1135725495铁杆木虫 (著名写手)
|
[求助]
运行matlab出现的问题
|
|
Caused by: Failure in initial user-supplied objective function evaluation. FMINCON cannot continue. 谁知道这是怎么回事啊? function parafit % % r1 =(k(1)*c^2-0.5*k(2)*(9.404-c))/(1+k(3)*c+0.5*k(4)*(9.404-c)+2*k(5)*c^2/(k(4)*(9.404-c))); % % dCAdt = - r1; clear all clc % t/min CA / mol/L Kinetics=[0 7.9556 3 5.0759 6 4.3477 9 3.9301 12 3.6489 15 3.4439 18 3.2875 21 3.1645 31 2.8989 41 2.7540 51 2.6694 61 2.6182]; k0 = [0.1 0.1 0.01 0.01 0.01]; % 参数初值 lb = [0 0 0 0 0]; % 参数下限 ub = [100 100 100 100 100]; % 参数上限 x0 = [7.9556]; yexp = Kinetics; warning off % 使用函数fmincon()进行参数估计 [k,fval,flag] = fmincon(@ObjFunc7Fmincon,k0,[],[],[],[],lb,ub,[],[],x0,yexp); fprintf('\n使用函数fmincon()估计得到的参数值为:\n') fprintf('\tk1 = %.11f\n',k(1)) fprintf('\tk2 = %.11f\n',k(2)) fprintf('\tk3 = %.11f\n',k(3)) fprintf('\tk4 = %.11f\n',k(4)) fprintf('\tk5 = %.11f\n',k(5)) fprintf(' The sum of the squares is: %.1e\n\n',fval) k_fm= k; warning off % 使用函数lsqnonlin()进行参数估计 [k,resnorm,residual,exitflag,output,lambda,jacobian] = ... lsqnonlin(@ObjFunc7LNL,k0,lb,ub,[],x0,yexp); ci = nlparci(k,residual,jacobian); fprintf('\n\n使用函数lsqnonlin()估计得到的参数值为:\n') fprintf('\tk1 = %.11f\n',k(1)) fprintf('\tk2 = %.11f\n',k(2)) fprintf('\tk3 = %.11f\n',k(3)) fprintf('\tk4 = %.11f\n',k(4)) fprintf('\tk5 = %.11f\n',k(5)) fprintf(' The sum of the squares is: %.1e\n\n',resnorm) k_ls = k; output warning off % 以函数fmincon()估计得到的结果为初值,使用函数lsqnonlin()进行参数估计 k0 = k_fm; [k,resnorm,residual,exitflag,output,lambda,jacobian] = ... lsqnonlin(@ObjFunc7LNL,k0,lb,ub,[],x0,yexp); ci = nlparci(k,residual,jacobian); fprintf('\n\n以fmincon()的结果为初值,使用函数lsqnonlin()估计得到的参数值为:\n') fprintf('\tk1 = %.11f\n',k(1)) fprintf('\tk2 = %.11f\n',k(2)) fprintf('\tk3 = %.11f\n',k(3)) fprintf('\tk4 = %.11f\n',k(4)) fprintf('\tk5 = %.11f\n',k(5)) fprintf(' The sum of the squares is: %.1e\n\n',resnorm) k_fmls = k; output tspan = [0 3 6 9 12 15 18 21 31 41 51 61]; [t x] = ode45(@KineticEqs,tspan,x0,[],k_fmls); figure; plot(t,x,'o-',t,yexp(:,2),'*');legend('ca-pr','ca-real') x % ------------------------------------------------------------------ function f = ObjFunc7Fmincon(k,x0,yexp) tspan = [0 3 6 9 12 15 18 21 31 41 51 61]; [t x] = ode45(@KineticEqs,tspan,x0,[],k); f = sum((x-yexp(:,2)).^2) ; % ------------------------------------------------------------------ function f = ObjFunc7LNL(k,x0,yexp) tspan = [0 3 6 9 12 15 18 21 31 41 51 61]; [t x] = ode45(@KineticEqs,tspan,x0,[],k); f1 = x - yexp(:,2); f = [f1]; % ------------------------------------------------------------------ function dxdt = KineticEqs(t,x,k) dxdt =-(k(1)*x^2-0.5*k(2)*(9.404-x))/(1+k(3)*c+0.5*k(4)*(9.404-x)+2*k(5)*x^2/(k(4)*(9.404-x))); |
» 猜你喜欢
【复旦大学】二维材料方向招收2026年博士研究生1名
已经有0人回复
北京纳米能源与系统研究所 王中林院士/曹南颖研究员课题组2026级硕/博/博后招生
已经有10人回复
物理学I论文润色/翻译怎么收费?
已经有152人回复
荷兰Utrecht University超快太赫兹光谱王海教授课题招收2026 CSC博士生
已经有23人回复
反铁磁体中的磁性切换:两种不同的机制已成功可视化
已经有0人回复
求标准粉末衍射卡号 ICDD 01-076-1802
已经有0人回复
新西兰Robinson研究所招收全奖PhD
已经有0人回复
石墨烯转移--二氧化硅衬底石墨烯
已经有0人回复
找到一些相关的精华帖子,希望有用哦~
matlab实现牛顿迭代法求非线性方程组程序运行出现问题
已经有8人回复
COMSOL4.4不能成功启用MATLAB,怎么办?
已经有5人回复
matlab中断循环
已经有9人回复
matlab提前设定语句运行时间的问题
已经有4人回复
使用music_code运行出现错误
已经有4人回复
matlab 运行ode45出错,不知道什么原因
已经有4人回复
linux 下 matlab 的调用问题
已经有3人回复
matlab “Inner matrix dimensions must agree.”一直不知道哪里出错了 求助
已经有6人回复
matlab一运行就出现的问题
已经有7人回复
请大侠指教matlab的这个错误提示到底是个神马意思?
已经有12人回复
有个matlab程序,但是运行不下来,求高手
已经有23人回复
运行matlab出现错误
已经有4人回复
关于matlab GUI打包生产exe文件,并使其在没有安装matlab的计算机上运行的问题。。
已经有4人回复
matlab的m文件关联问题
已经有17人回复
matlab解决重心法选址问题,运行不了啊,求助各位大神
已经有10人回复
matlab 运行出错,求帮忙啦~~·
已经有3人回复
问下这个问题怎么解决.....真心啊
已经有4人回复
matlab生成随机行走网格 模拟材料生长
已经有26人回复
求助matlab-simulink运行时报错问题
已经有3人回复
同样的MATLAB程序,为何在别人的电脑上运行不了
已经有21人回复
MATLAB安装后出现一堆java的问题
已经有12人回复
【求助】谁能帮我解决一下matlab安装问题【已解决】
已经有8人回复
科研从小木虫开始,人人为我,我为人人













回复此楼
点击这里搜索更多相关资源