| 查看: 530 | 回复: 2 | |||
| 当前主题已经存档。 | |||
whiteman铜虫 (正式写手)
|
[交流]
【求助】200金币求如何在matlab里实现循环求极小值?已有1人参与
|
||
|
如M函数: function f=c(p); z=p(1); T=377;u1=0.012;u2=u1; a1=(4.273e+5)*(T-377.0); a11=-6.36e+8; a111=2.81e+9; a1111=1.74e+10; Q11=0.12;Q12=-0.053;Q44=0.052;s11=4.6e-12;s12=-1.1e-12;s44=11.1e-12; aa3=a1-(u1+u2)*Q12/(s11+s12); aa33=a11+Q12^2/(s11+s12); f=aa3*z^2+aa33*z^4+a111*z^6+a1111*z^8; 我现在只会在m函数中改变u1然后在命令行输入[x,f]=fminbnd('c',0,1)求不同u1下的极小值。怎样才能在Matlab上自动求u1=-0.015,-0.014,。。。0.015函数求极小值 |
» 猜你喜欢
🌟 比利时新鲁汶大学(UCLouvain)诚邀CSC博士加入Pascal Gehring教授团队
已经有0人回复
第一性原理计算方向2026级博士申请 PRB*1,四级484
已经有1人回复
物理学I论文润色/翻译怎么收费?
已经有54人回复
求助VISSIM破解版软件
已经有0人回复
求2026年在台湾举行的物理和材料领域国际学术会议信息
已经有0人回复
求国际会议网站
已经有1人回复
求取一些关于纳米材料和纳米技术相关的英文PPT。
已经有0人回复
【复旦大学】二维材料方向招收2026年博士研究生1名
已经有0人回复
北京纳米能源与系统研究所 王中林院士/曹南颖研究员课题组2026级硕/博/博后招生
已经有10人回复
荷兰Utrecht University超快太赫兹光谱王海教授课题招收2026 CSC博士生
已经有2人回复
change0618
铁杆木虫 (著名写手)
方丈大师
- 计算强帖: 1
- 应助: 44 (小学生)
- 金币: 17724.5
- 红花: 17
- 帖子: 2413
- 在线: 546.7小时
- 虫号: 496517
- 注册: 2008-01-19
- 专业: 化学反应工程
★ ★ ★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
zeoliters(金币+3):多谢回帖交流! 2010-03-05 16:37
小木虫(金币+0.5):给个红包,谢谢回帖交流
zeoliters(金币+3):多谢回帖交流! 2010-03-05 16:37
|
加一个for循环 function A111 clc clear all c=-0.015:0.001:0.015; for i=1:length(c) [x(i),f(i)]=fminbnd(@(x)myfun(x,c(i)),0,1); end [x',f'] function f=myfun(p,u1) z=p(1); T=377;u2=u1; a1=(4.273e+5)*(T-377.0); a11=-6.36e+8; a111=2.81e+9; a1111=1.74e+10; Q11=0.12;Q12=-0.053;Q44=0.052;s11=4.6e-12;s12=-1.1e-12;s44=11.1e-12; aa3=a1-(u1+u2)*Q12/(s11+s12); aa33=a11+Q12^2/(s11+s12); f=aa3*z^2+aa33*z^4+a111*z^6+a1111*z^8; |
2楼2010-03-01 17:59:33
huweny87
木虫 (小有名气)
- 应助: 8 (幼儿园)
- 金币: 3094.5
- 红花: 1
- 帖子: 193
- 在线: 84.2小时
- 虫号: 638019
- 注册: 2008-10-27
- 性别: GG
- 专业: 半导体材料
★ ★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
luoqiquan(金币+2):ths 2010-04-08 18:48
小木虫(金币+0.5):给个红包,谢谢回帖交流
luoqiquan(金币+2):ths 2010-04-08 18:48
|
建议用并行for循环(parfor),这样执行速度比较快.将楼主的函数第三行对u1的赋值语句删掉,得到一个新的函数.新写一个脚本来实现楼主的功能. u1range=-0.015:0.001:0.015; x=zeros(size(u1range));f=zeros(size(u1range)); global u1; parfor i=1:length(u1range) u1=u1range(i); [x(i),f(i)]=fminbnd('c',0,1); end 仅提供参考思路,程序没有调试过. |

3楼2010-04-07 23:24:18













回复此楼