matlab fmincon函数格式,求助 fmincon 函数调用格式说明

matlab fmincon函数格式,求助 fmincon 函数调用格式说明functionKineticsEstclearallclck0=[0.50.50.50.50.5];%参数初值lb=[00000];%参数下限ub=[+inf+inf+inf+inf+inf];%参数上限x0=[0.18830.25070.0467…

大家好,又见面了,我是你们的朋友全栈君。

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) )

];

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/143047.html原文链接:https://javaforall.net

(0)
上一篇 2022年5月10日 下午10:20
下一篇 2022年5月10日 下午10:20


相关推荐

  • 压力换算公斤单位换算_压力单位换算表

    压力换算公斤单位换算_压力单位换算表压力单位换算表来源:华强电子网作者:华仔浏览:1163时间:2016-08-1014:18标签:摘要:november6,2002牛顿/米2(帕斯卡)(n/m2)(pa)公斤力/米2(kgf/m2)公斤力/厘米2(kgf/cm2)巴(bar)标准大气压(atm)毫米水柱4oc(mmh2o)毫米水银柱0oc(mmhg)磅/英寸2(lb/in2,psi)牛顿/米2(帕斯卡)(n…

    2022年7月27日
    15
  • IDEA中的.iml文件和.idea文件夹作用和意义

    IDEA中的.iml文件和.idea文件夹作用和意义iml 文件 idea 对 module 配置信息之意 infomationof 是 intellijidea 的工程配置文件 里面是当前 project 的一些配置信息 idea 存放项目的配置信息 包括历史记录 版本控制信息等 idea 文件夹 Idea 存放项目的配置信息 包括历史记录 版本控制信息等 可以点击 file gt Settings gt Filety

    2026年3月26日
    3
  • Python 进阶 — Flake8 静态代码检查工具

    Python 进阶 — Flake8 静态代码检查工具目录文章目录目录Flake8错误返回码安装使用插件Flake8Flake8是由Python官方发布的一款静态代码检查工具(https://pypi.python.org/pypi/flake8/),相对于PyLint而言,Flake8的检查规则灵活,支持集成额外插件,扩展性强。Flake8是对下面3个工具的封装:PyFlakes:静态检查Python代码逻辑错误的工具。PEP8:静态检查PEP8编码风格的工具。NedBatchelder’sMcCabe:静态分析P

    2025年9月7日
    6
  • python中读写LMDB数据库[通俗易懂]

    python中读写LMDB数据库[通俗易懂]转自原文:https://blog.csdn.net/dcrmg/article/details/79144507LMDB的全称是LightningMemory-MappedDatabase(快如闪电的内存映射数据库),它的文件结构简单,包含一个数据文件和一个锁文件:LMDB文件可以同时由多个进程打开,具有极高的数据存取速度,访问简单,不需要运行单独的数据库管理进程,只要在访问数据的代码…

    2026年4月17日
    5
  • 把DeepSeek装进电脑!本地部署+数据训练全攻略

    把DeepSeek装进电脑!本地部署+数据训练全攻略

    2026年3月16日
    2
  • 根号及运算法则_根号下运算法则

    根号及运算法则_根号下运算法则1.根号及运算法则1.根号及运算法则成立条件:a≥0,n≥2且n∈N。成立条件:a≥0,n≥2且n∈N。成立条件:a≥0,b>0,n≥2且n∈N。成立条件:a≥0,b>0,n≥

    2022年8月1日
    10

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号