function KineticsEst

clear all

clc

k0 = [0.5  0.5  0.5  0.5  0.5];         % 参数初值

lb = [0  0  0  0  0];                   % 参数下限

ub = [+inf  +inf  +inf  +inf  +inf];    % 参数上限

x0 = [0.1883  0.2507  0.0467  0.0899  0.1804  0.1394  0.1046];

KineticsData1;

yexp = ExpData(:,2:5);                  % yexp: 实验数据[x1        x4        x5        x6]

% 使用函数fmincon()进行参数估计

[k,fval,flag,output] = fmincon(@ObjFunc4Fmincon,k0,[],[],[],[],lb,ub,[],[],x0,yexp);

fprintf('\n使用函数fmincon()估计得到的参数值为:\n')

fprintf('\tk1 = %.4f\n',k(1))

fprintf('\tk2 = %.4f\n',k(2))

fprintf('\tk3 = %.4f\n',k(3))

fprintf('\tk4 = %.4f\n',k(4))

fprintf('\tk5 = %.4f\n',k(5))

fprintf('  The sum of the squares is: %.1e\n\n',fval)

k_fmincon = k;

% ------------------------------------------------------------------

function f = ObjFunc4Fmincon(k,x0,yexp)

tspan = [0.00 : 0.01 : 0.20];

[t x] = ode45(@KineticEqs,tspan,x0,[],k);

y(:,1) = x(:,1);

y(:,2:4) = x(:,4:6);

f = sum((y(:,1)-yexp(:,1)).^2) + sum((y(:,2)-yexp(:,2)).^2)   ...

+ sum((y(:,3)-yexp(:,3)).^2) + sum((y(:,4)-yexp(:,4)).^2);

% ------------------------------------------------------------------

function dxdt = KineticEqs(t,x,k)

q = 8.75 + k(5);

dxdt =  ...

[ ( k(5)-q*x(1)- k(1)*x(1)*x(2)-k(4)*x(1)*x(6)*sqrt(0.9) )

( 7.0-q*x(2) - k(1)*x(1)*x(2)-2*k(2)*x(2)*x(3) )

( 1.75 -q*x(3) - k(2)*x(2)*x(3) )

( -q*x(4) + 2*k(1)*x(1)*x(2)-k(3)*x(4)*x(5) )

( -q*x(5) + 3*k(2)*x(2)*x(3)-k(3)*x(4)*x(5) )

( -q*x(6) + 2*k(3)*x(4)*x(5)-k(4)*x(1)*x(6)*sqrt(0.9) )

( -q*x(7) + 2*k(4)*x(1)*x(6)*sqrt(0.9) )

];

matlab fmincon函数格式,求助 fmincon 函数调用格式说明相关推荐

  1. matlab pdepe函数边界,[求助]用pdepe求解偏微分方程时遇到分段边界条件的问题

    [求助]用pdepe求解偏微分方程时遇到分段边界条件的问题 用Matlab中的pdepe函数求解偏微分方程时,左边界条件是一个分段函数.左边界开始的时候是1,在t时刻后,左边界突变为0.在写左边界的时 ...

  2. matlab fsolve函数 误差,求助 关于matlab中fsolve函数的问题

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 function F=myfun(t) F(1)=9.912.*t(1)-19.84.*t(2)+9.912.*t(3)+0.016.*t(14)-(-0 ...

  3. MATLAB plot函数

    MATLAB plot函数 this article comes from my blog :MATLAB plot()函数 详解 文章目录 MATLAB plot函数 1. 定义 2.调用格式 1. ...

  4. matlab优化问题约束不取等号6,matlab中fmincon函数中不含等号的边界值怎么设置?,matlab中的fmincon函数一直求不出为什么...

    导航:网站首页 > matlab中fmincon函数中不含等号的边界值怎么设置?,matlab中的fmincon函数一直求不出为什么 matlab中fmincon函数中不含等号的边界值怎么设置? ...

  5. python调用matlab程序_Python调用MATLAB实现fmincon函数

    motivation: 1.要实现"符号几何规划"的功能,使用MATLAB自带的fmincon函数来实现 2.工程的代码是通过Python来完成的,需要Python调用MATLAB ...

  6. [转载]Matlab fmincon函数用法

    原文地址:Matlab fmincon函数用法作者:长笛人倚楼Gloria 这个函数在之前优化工具箱一文中已经介绍过,由于其应用广泛,所以这里通过实例单独整理一下其用法. 一.基本介绍 求解问题的标准 ...

  7. Matlab fmincon函数用法

    这个函数在之前优化工具箱一文中已经介绍过,由于其应用广泛,所以这里通过实例单独整理一下其用法. 一.基本介绍 求解问题的标准型为 min F(X) s.t AX <= b AeqX = beq ...

  8. matlab的fmincon函数如何传入额外参数或数据?

    文章目录 一.关于matlab的fmincon函数 二.使用匿名函数句柄传入额外参数或数据例子 一.关于matlab的fmincon函数   fmincon是matlab的带约束的非线性优化模型的求解 ...

  9. python调用matlab 性能_Python调用MATLAB实现fmincon函数

    motivation: 1.要实现"符号几何规划"的功能,使用MATLAB自带的fmincon函数来实现 2.工程的代码是通过Python来完成的,需要Python调用MATLAB ...

最新文章

  1. start.aliyun.com 正式上线!极速构建 Spring Cloud 应用
  2. Rootkit Hunter Sourcecode Learning
  3. GRUB基本使用介绍
  4. 图像处理——基于OpenCV的canny边缘检测
  5. criscriter英语测试软件,iTEST大学英语测试与训练系统
  6. SpringBoot指南(五)——拦截器、原生组件
  7. 「职业生涯规划」真的有必要做吗?
  8. BookCorpus数据集爬虫
  9. 卡巴斯基6.0最新授权文件[6.0.2.523可用]
  10. 从学习2021美赛O奖论文到获得2022美赛M奖——论文精读经验分享
  11. win10系统 DNS服务器,dns出错?Win10系统dns服务器未响应的修复方法
  12. EnableViewState和ViewStateMode差别详解
  13. 计算机硬盘容量1t,硬盘1tb等于多少gb 硬盘容量计算公式
  14. Freeswitch 怎么配置 Proxy Media 和 bypass 模式
  15. 父级fixed_position:fixed相对父级元素定位而不是浏览器
  16. 多电脑切换器(KVM切换器)工作原理
  17. 数论12——浅谈指数与对数
  18. RSA算法计算d的两种方法。
  19. 推荐七大写作利器,总有一款适合你
  20. 逃离云端“母体”——虚拟机逃逸

热门文章

  1. 无法访问计算机 库未注册,64位操作系统下用Microsoft.Jet.OLEDB.4.0出现未注册错误...
  2. 微信资料打印,多页可以合在一张a4纸上吗
  3. 冲量在线入选北京市2022年第一批国家高新技术企业认定名单
  4. python编写掷骰子小游戏
  5. 小红书居家写真文案与标题
  6. Android 带你玩转实现游戏2048 其实2048只是个普通的控件
  7. 物联网开发笔记(96)- Micropython ESP32开发之SPI接口控制Micro SD卡TF卡模块挂载内存卡
  8. jQuery 鼠标点击时变色,点击其他时还原
  9. notepad++替换回车换行符,如何操作?
  10. 【最新】.Net程序员学习路线图以及就业现状