小木虫 | 小木虫论坛 | 木虫之家 | 论文范文 | 期刊杂志宝库 | 影响因子 | 新闻导读 | 学术网址之家
博后专家 免费文献 生物材料 影音娱乐 生活健康 我的故事 科研经验 论文投稿 基金申请 教师之家 公务员 木虫出品
硕博家园 考研 考博 找工作 留学出国 外语 翻译求助 计算模拟 电化 晶体 环境 催化
分析 有机合成 化工技术 精细化工 化学工具 化学综合 高分子 材料综合 纳米 物理 药学综合 新药研发
医学综合 生物科学 地学 食品 理工 信息科学 理财 经济 管理 有奖问答 木虫知道 文献检索
检索知识 专利 标准 学术资料 学术工具 电脑资源 精粹资源          
当前位置:小木虫 >> 计算模拟 >> 【求助】: MATLAB中lsqnonlin的应用

网络资源推荐

【求助】: MATLAB中lsqnonlin的应用


作者: identify    发布日期: 2008-09-08

请达人给看看:
引用完24组数据后调用函数

beta0=[191.2 6392 41770 60920 -2.902 29640 -0.504 -3559 -1.692 2001];   
[beta,resnorm]=lsqnonlin(@OptObjFunc,beta0,[],[],[],Y,T,Nin,Nout,yco,yco2,yH2)

function f=OptObjFunc(beta,Y,T,Nin,Nout,yco,yco2,yH2)
global K1 K2 Kco Kco2 KH2 jco jco2 jH2 jm jH2O

然后是一系列计算
K1=beta(1)*exp(-beta(3)/(R*T));
...............
是后我写的function f是
f=[Y(1,: )-(Nin.*yco2-W.*K2.*fco2.*(fH2^3).*(1-B2)./((1+Kco.*fco+Kco2.*fco2+KH2.*fH2)^4))./Nout;
     Y(2,: )-W.*(K2.*fco2.*(fH2^3).*(1-B2)./((1+Kco.*fco+Kco2.*fco2+KH2.*fH2)^4)+K1.*fco.*(fH2^2).*(1-B1)./((1+Kco.*fco+Kco2.*fco2+KH2.*fH2)^3))./Nout];

运行时提示的错误是
??? Error using ==> optim\private\lsqncommon
User supplied function ==> OptObjFunc
failed with the following error:

Error using ==> mrdivide
Matrix dimensions must agree.

Error in ==> lsqnonlin at 163
[x,Resnorm,FVAL,EXITFLAG,OUTPUT,LAMBDA,JACOB] = ...

Error in ==> Kinetics_m at 30
[beta,resnorm]=lsqnonlin(@OptObjFunc,beta0,[],[],[],Y,T,Nin,Nout,yco,yco2,yH2)

我实在是不知道该怎么去改了.....

[ Last edited by identify on 2008-5-29 at 10:38 ]
相关回复:

作者: allenhero1228   发布日期: 2008-05-27
[beta,resnorm]=lsqnonlin(@OptObjFunc,beta0,[],[],[],Y,T,Nin,Nout,yco,yco2,yH2)
传递给目标函数的参数里面里面是不是少了个W
其次,matlab给你的提示是矩阵维数不对,也就是说进行计算时要有两个矩阵相乘,乘方前面必须有.,否则就不是每个向量里面的元素分别乘方了,你把这该下应该就可以了,还有就是你输入的变量必须维数全部相同
你的function里面是两个目标函数,我不知道这会不会有影响,建议你先弄成一个函数试试
你是做动力学模型的吧,是不是甲醇合成的模型

作者: identify   发布日期: 2008-05-28
恩恩...先感谢了
偶就是做甲醇合成动力学模型...可怜的我能力有限啊...:(
还望多多指教....

特别提示:本帖内容由 identify 提供,小木虫为个人免费站点,仅提供交流平台,不对该内容负责。欢迎协助我们监督管理,如果您对该内容有异议,请立即发邮件联系通知管理员,我们保证在1个工作日内给予处理。

相关网络推荐

网络资源导读


小木虫,学术科研第一站,为中国学术科研研究提供免费动力
欢迎监督,发现不妥请立即联系管理员
京ICP备05001187号