24小时热门版块排行榜    

查看: 647  |  回复: 0

898766282

新虫 (正式写手)

[求助] 复杂动力学多参数拟合程序

function Akinetics
clear all
clc
global R C
a0=[0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5]                       %参数初值
lb=[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0];                                               %参数下限
ub=[+inf +inf +inf +inf +inf +inf +inf +inf +inf +inf +inf +inf +inf +inf +inf +inf +inf +inf +inf +inf +inf];        %参数上限
sulv = ...
   [0.1260    0.0960    0.0630    0.2680    0.0210    0.0189    0.0126    0.0168    0.0147
    0.1260    0.1280    0.0630    0.2800    0.0210    0.0189    0.0126    0.0168    0.0147
    0.1220    0.1460    0.0610    0.2840    0.0203    0.0183    0.0122    0.0163    0.0142
    0.1400    0.1740    0.0700    0.2960    0.0233    0.0210    0.0140    0.0187    0.0163
    0.1700    0.1980    0.0850    0.3280    0.0283    0.0255    0.0170    0.0227    0.0198
    0.1700    0.2160    0.0850    0.3320    0.0283    0.0255    0.0170    0.0227    0.0198
    0.1760    0.2300    0.0880    0.3400    0.0293    0.0264    0.0176    0.0235    0.0205
    0.2140    0.2480    0.1070    0.4560    0.0357    0.0321    0.0214    0.0285    0.0250
    0.2440    0.2780    0.1220    0.4680    0.0407    0.0366    0.0244    0.0325    0.0285
    0.2620    0.2980    0.1310    0.5560    0.0437    0.0393    0.0262    0.0349    0.0306]

nondu = ...
   [0.0252    0.0192    0.0126    0.0536    0.0042    0.0038    0.0025    0.0034    0.0029
    0.0252    0.0256    0.0126    0.0560    0.0042    0.0038    0.0025    0.0034    0.0029
    0.0244    0.0292    0.0122    0.0568    0.0041    0.0037    0.0024    0.0033    0.0028
    0.0280    0.0348    0.0140    0.0592    0.0047    0.0042    0.0028    0.0037    0.0033
    0.0340    0.0396    0.0170    0.0656    0.0057    0.0051    0.0034    0.0045    0.0040
    0.0340    0.0432    0.0170    0.0664    0.0057    0.0051    0.0034    0.0045    0.0040
    0.0352    0.0460    0.0176    0.0680    0.0059    0.0053    0.0035    0.0047    0.0041
    0.0428    0.0496    0.0214    0.0912    0.0071    0.0064    0.0043    0.0057    0.0050
    0.0488    0.0556    0.0244    0.0936    0.0081    0.0073    0.0049    0.0065    0.0057
    0.0524    0.0596    0.0262    0.1112    0.0087    0.0079    0.0052    0.0070    0.0061]
R=sulv(:,1:9);C=nondu(:,1:9);               %实验数据

%使用lsqnonlin()进行参数估计
[a,resnorm,residual ,exitflag,output,lambda,jacobian]=lsqnonlin(@objfun,a0,lb,ub,R,C);
ci=nlparci(a,residual,jacobian);

function f=objfun(a)
global R C
f=R-r(a,C)

function rr=r(a,C)
rr=...
  [(-a(15).*(C(1).^a(1)).*C(2).^a(2)-a(16).*(C(1).^a(3)).*C(2).^a(4)-a(17).*(C(1).^a(5)).*C(4).^a(6)-a(18).*(C(1).^a(7)).*C(4).^a(8))
   (-a(15).*(C(1).^a(1)).*C(2).^a(2)-a(16).*(C(1).^a(3)).*C(2).^a(4)-a(17).*(C(1).^a(5)).*C(4).^a(6)-a(19).*(C(3).^a(9)).*C(2).^a(10)-a(21).*(C(3).^a(13)).*C(2).^a(14))
   (+a(15).*(C(1).^a(1)).*C(2).^a(2)-a(19).*(C(3).^a(9)).*C(2).^a(10)-a(20).*(C(3).^a(11)).*C(4).^a(12)-a(21).*(C(3).^a(13)).*C(2).^a(14))
   (+a(15).*(C(1).^a(1)).*C(2).^a(2)+a(18).*(C(1).^a(7)).*C(4).^a(8)-a(17).*(C(1).^a(5)).*C(4).^a(6)+a(19).*(C(3).^a(9)).*C(2).^a(10)-a(20).*(C(3).^a(11)).*C(4).^a(12))
   (+a(16).*(C(1).^a(3)).*C(2).^a(4)+a(20).*(C(3).^a(11)).*C(4).^a(12))
   (+a(18).*(C(1).^a(7)).*C(4).^a(8))
   (+a(17).*(C(1).^a(5)).*C(4).^a(6))
   (+a(19).*(C(3).^a(9)).*C(2).^a(10))
   (+a(21).*(C(3).^a(13)).*C(2).^a(14))]

Warning: Struct field assignment overwrites a value with class "double". See MATLAB R14SP2 Release Notes, Assigning Nonstructure Variables As Structures Displays Warning, for details.
> In createOptionFeedback at 34
  In prepareOptionsForSolver at 31
  In lsqnonlin at 168
  In Akinetics at 34
Error using Akinetics>objfun
Too many input arguments.

Error in lsqnonlin (line 194)
            initVals.F = feval(funfcn{3},xCurrent,varargin{:});

Error in Akinetics (line 34)
[a,resnorm,residual ,exitflag,output,lambda,jacobian]=lsqnonlin(@objfun,a0,lb,ub,R,C);

Caused by:
    Failure in initial user-supplied objective function evaluation. LSQNONLIN cannot continue.

求指导,程序哪里出错了,或者求大神重新赐予我新的程序,感觉我的程序拟合不出这么多的参数,21个参数。非常感谢。
动力学模型是:
R(1)=(-a(15).*(C(1).^a(1)).*C(2).^a(2)-a(16).*(C(1).^a(3)).*C(2).^a(4)-a(17).*(C(1).^a(5)).*C(4).^a(6)-a(18).*(C(1).^a(7)).*C(4).^a(8))

  R(2)=(-a(15).*(C(1).^a(1)).*C(2).^a(2)-a(16).*(C(1).^a(3)).*C(2).^a(4)-a(17).*(C(1).^a(5)).*C(4).^a(6)-a(19).*(C(3).^a(9)).*C(2).^a(10)-a(21).*(C(3).^a(13)).*C(2).^a(14))

R(3)= (+a(15).*(C(1).^a(1)).*C(2).^a(2)-a(19).*(C(3).^a(9)).*C(2).^a(10)-a(20).*(C(3).^a(11)).*C(4).^a(12)-a(21).*(C(3).^a(13)).*C(2).^a(14))
  
R(4)=(+a(15).*(C(1).^a(1)).*C(2).^a(2)+a(18).*(C(1).^a(7)).*C(4).^a(8)-a(17).*(C(1).^a(5)).*C(4).^a(6)+a(19).*(C(3).^a(9)).*C(2).^a(10)-a(20).*(C(3).^a(11)).*C(4).^a(12))
  
R(5)=(+a(16).*(C(1).^a(3)).*C(2).^a(4)+a(20).*(C(3).^a(11)).*C(4).^a(12))
  
R(6)= (+a(18).*(C(1).^a(7)).*C(4).^a(8))
  
R(7)= (+a(17).*(C(1).^a(5)).*C(4).^a(6))

R(8)= (+a(19).*(C(3).^a(9)).*C(2).^a(10))
  
R(9)= (+a(21).*(C(3).^a(13)).*C(2).^a(14))]
回复此楼

» 猜你喜欢

已阅   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 898766282 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 材料与化工求调剂 +6 为学666 2026-03-16 6/300 2026-03-17 20:15 by peike
[考研] 299求调剂 +4 △小透明* 2026-03-17 4/200 2026-03-17 20:09 by peike
[考研] 312求调剂 +4 陌宸希 2026-03-16 5/250 2026-03-17 17:09 by ruiyingmiao
[考研] 工科材料085601 279求调剂 +3 困于星晨 2026-03-17 3/150 2026-03-17 14:08 by ms629
[考研] 275求调剂 +4 太阳花天天开心 2026-03-16 4/200 2026-03-17 10:53 by 功夫疯狂
[考研] 考研调剂 +3 淇ya_~ 2026-03-17 5/250 2026-03-17 09:25 by Winj1e
[考研] 一志愿211 0703方向310分求调剂 +3 努力奋斗112 2026-03-15 3/150 2026-03-16 16:44 by houyaoxu
[考研] 285求调剂 +6 ytter 2026-03-12 6/300 2026-03-16 15:05 by njzyff
[教师之家] 焦虑 +7 水冰月月野兔 2026-03-13 9/450 2026-03-16 10:00 by Quakerbird
[考研] 本科南京大学一志愿川大药学327 +3 麦田耕者 2026-03-14 3/150 2026-03-14 20:04 by 外星文明
[基金申请] 有必要更换申报口吗 20+3 fannyamoy 2026-03-11 3/150 2026-03-14 00:52 by zhanghaozhu
[考研] 材料371求调剂 +9 鳄鱼? 2026-03-11 11/550 2026-03-13 22:53 by JourneyLucky
[考研] 332求调剂 +3 zjy101327 2026-03-11 6/300 2026-03-13 22:48 by JourneyLucky
[考研] 材料工程调剂 +9 咪咪空空 2026-03-12 9/450 2026-03-13 22:05 by 星空星月
[考研] 求材料调剂 085600英一数二总分302 前三科235 精通机器学习 一志愿哈工大 +4 林yaxin 2026-03-12 4/200 2026-03-13 22:04 by 星空星月
[考研] 求调剂 +7 18880831720 2026-03-11 7/350 2026-03-13 16:10 by JourneyLucky
[考研] 材料专硕350 求调剂 +4 王金科 2026-03-12 4/200 2026-03-13 16:02 by ruiyingmiao
[考研] 307求调剂 +5 超级伊昂大王 2026-03-12 5/250 2026-03-13 15:56 by 棒棒球手
[论文投稿] 投稿问题 5+4 星光灿烂xt 2026-03-12 6/300 2026-03-13 14:17 by god_tian
[考研] 070303一志愿西北大学学硕310找调剂 +3 d如愿上岸 2026-03-13 3/150 2026-03-13 10:43 by houyaoxu
信息提示
请填处理意见