大佬求解
function k=q1222clc;k0=[1 1 1 1];lb=[0 0 0 0];ub=[inf inf inf inf];x0=[0.0493 0];expdata=[0,3,5,7,9,11,13,14;0.0493 0.0041 0.0303 0.0151 0.0100 0.0056 0.0020 0.0003;0 0.0041 0.0049 0.0043 0.0026 0.0016 0.0008 0.0003]';[k]=lsqnonlin(@ObjFunc4LNL,k0,lb,ub,[],expdata);[t1,x1]=ode45(@KineticEqs,[0 14],x0,[],k);figure(1),plot(expdata(:,1),expdata(:,2),'b^',expdata(:,1),expdata(:,3),'ro',t1,x1(:,1),'b-',t1,x1(:,2),'r-')legend('CA','CB')xlabel('时间 min');ylabel('浓度');endfunction f=ObjFunc4LNL(k,expdata)expdata=[0,3,5,7,9,11,13,14;0.0493 0.0041 0.0303 0.0151 0.0100 0.0056 0.0020 0.0003;0 0.0041 0.0049 0.0043 0.0026 0.0016 0.0008 0.0003]';[~,x1]=ode45(@KineticEqs,expdata(:,1),[0.0493 0],[],k);f1=(x1(:,1)-expdata(:,2));f2=(x1(:,2)-expdata(:,3));f=[f1;f2];end function dxdt=KineticEqs(~,x,k) dxdt = zeros(2, 1); dxdt(1) = k(1) * x(1) /(1+k(2)*x(1)); dxdt(2) = -k(1) * x(1) /(1+k(2)*x(1))+k(3) * x(2) /(1+k(4)*x(2)); end