calforbeta matlab,matlab程序运行出现警告,求指点修改 - 计算模拟 - 小木虫 - 学术 科研 互动社区...

CODE:

function aa

options = optimset('Algorithm','Levenberg-Marquardt','MaxFunEvals',5000);

[x,RESNORM,RESIDUAL,EXITFLAG]=lsqnonlin(@ENRTL,[1,1],[],[],options)

function f= ENRTL(beta)

x2 = [0.0056,0.0099,0.0160,0.0235,0.0326,0.0415,0.0496,0.0580,0.0664,0.747,0.0806,0.0892,0.0968,0.1044,0.1115,0.1216,0.1263,0.1295,0.1324,0.1391,0.1448];

x1 = 1 - x2;

y1exp = [1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1];

T = [369.9,369.95,370.05,370.15,370.35,370.45,370.65,370.80,370.95,371.10,371.25,371.40,371.60,371.80,372.00,372.25,372.40,372.50,372.65,372.75,372.85];

P = 100.00;

for i = 1:21;

Ps1(i)=exp(16.2886-3816.44/(T(i)-46.13));

end

%计算值r

for i=1:21;

t12(i)=beta(1)/8.314/(T(i));

t21(i)=beta(2)/8.314/(T(i));

G12(i)=exp(-0.206*t12(i));

G21(i)=exp(-0.206*t21(i));

r1cal(i)=exp((G21(i)*t21(i)*4*x2(i))/(G21(i)*4*x2(i)+x1(i))-x1(i)*G21(i)*t21(i)*4*x2(i)/(G21(i)*4*x2(i)+x1(i))+2*x2(i)*G12(i)*t12(i)/(2*x2(i)+x1(i)*G12(i))-2*x2(i)*G12(i)*x1(i)*t12(i)*G12(i)/(2*x2(i)+x1(i)*G12(i))+2*x2(i)*G12(i)*t12(i)/(2*x2(i)+x1(i)*G12(i))-2*x2(i)*G12(i)*x1(i)*G12(i)*t12(i)/(2*x2(i)+x1(i)*G12(i)));

y1cal(i)=r1cal(i)*x1(i)*Ps1(i)/P;

end

%目标函数

sumdetr1=sum((y1exp-y1cal).^2);

f=sumdetr1;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值