24小时热门版块排行榜    

查看: 1847  |  回复: 10

琚裕波

金虫 (小有名气)

[求助] 求助!这个程序错在哪里?1stopt运行不了

Title "Kinetics";
Parameters k1_a,k1_b,k2_a,k2_b,KCO_a,KCO_b,KCO2_a,KCO2_b,KH2_a,KH2_b;  //需要拟合的参数
Variable TT,PP,Nin,yH2in,yCOin,yCO2in,yN2in,yN2out;                    //输入数据
Variable y1[Output],y2[Output];                                        //对比数据
StartProgram [VB];
Dim iter As Integer
dim TBA As Double
dim RCO As Double
dim RCO2 As Double
Dim KT1 As Double
dim KF1 As Double
dim KT2 As Double
dim KF2 As Double
dim KH2 As Double
dim KCO As Double
dim KCO2 As Double
Dim T As Double
dim P_Ca As Double
Dim fH2 As Double
dim fCO2 As Double
dim fCO As Double
dim fM As Double
dim fH2O As Double
Dim Beta1 As Double
dim Beta2 As Double
dim Nt as double
dim yCO as double
dim yCO2 as double
for iter=0 to Datalength-1
    TBA=503.2               //实验平均温度
    T=TT(iter)+273.15
    P_Ca=PP(iter)/0.101325
    //反应平衡常数计算
    KF1=Exp(13.1652+9203.26/T-5.92839*Ln(T)-0.00352404*T+0.0000102264*T*T-0.00000000769446*T^3+2.38583E-12*T^4)*(0.101325^(-2))
    KF2=Exp(1.6654+4553.34/T-2.72613*Ln(T)-0.01422914*T+0.000017206*T*T-0.00000001106294*T^3+3.19698E-12*T^4)*(0.101325^(-2))
    //逸度系数计算
    fH2=PP(iter)*yH2in(iter)*Exp((0.110785+35.3324/T-5005.47/(T*T*T)-19.6109*yH2in(iter)/T-20.9799*yH2in(iter)*yH2in(iter)/T)*P_Ca/T)
    fCO2=PP(iter)*yCO2in(iter)*Exp((-0.343605+428.452/T-69217700/(T*T*T)-327.402*yCO2in(iter)/T-374.954*yCO2in(iter)*yCO2in(iter)/T)*P_Ca/T)
    fCO=PP(iter)*yCOin(iter)*Exp((-0.093261+189.156/T-399940/(T*T*T)-181.527*yCOin(iter)/T+140.001*yCOin(iter)*yCOin(iter)/T)*P_Ca/T)
    Beta1=fM/(KF1*fCO*fH2^2)
    Beta2=fM*fH2O/(KF2*fCO2*fH2^3)
    //吸附平衡常数计算
    KCO=Exp(KCO_a+KCO_b*(1/T-1/TBA))
    KCO2=Exp(KCO2_a+KCO2_b*(1/T-1/TBA))
    KH2=Exp(KH2_a+KH2_b*(1/T-1/TBA))
    //反应速率常数计算
    KT1=k1_a*Exp(k1_b/8.314/T)
    KT2=k2_a*Exp(k2_b/8.314/T)
    //反应速率计算
    RCO=KT1*fCO*(fH2^2)*(1-Beta1)/((1+KCO*fCO+KCO2*fCO2+KH2*fH2)^3)
    RCO2=KT2*fCO2*(fH2^3)*(1-Beta2)/((1+KCO*fCO+KCO2*fCO2+KH2*fH2)^4)
    //通过反应速率计算出口CO和CO2组成,其中1.9108为催化剂质量
    Nt=Nin(iter)*yN2in(iter)/yN2out(iter)
    yCO=(Nin(iter)*yCOin(iter)-RCO*1.9108)/Nt
    yCO2=(Nin(iter)*yCO2in(iter)-RCO2*1.9108)/Nt
    //计算值与输入值进行对比
    y1(iter)=yCO
    y2(iter)=yCO2
Next
EndProgram;
Data;

[ Last edited by nono2009 on 2013-9-10 at 20:21 ]
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

一切都会向着最好的方向发展!
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
回帖支持 ( 显示支持度最高的前 50 名 )

dingd

铁杆木虫 (职业作家)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
jjdg: 金币+1, 辛苦了 2013-09-13 00:34:04
琚裕波: 回帖置顶 2013-09-13 14:28:13
琚裕波: 金币+20, ★★★很有帮助, 继续回答啊 2013-09-13 19:17:15
1.5破解版不行,5.0正版运行没问题,不用任何修改。

不知道你的参数有无范围限制,有无过拟合现象。

均方差(RMSE):0.00320856901844522
残差平方和(SSE):0.00041179660584506
相关系数(R): 0.999147398619087
相关系数之平方(R^2): 0.998295524167289
确定系数(DC): 0.998293391304997
F统计(F-Statistic): 16.4900938090552

参数                  最佳估算
--------------------        -------------
k1_a        16199.5274910722
k1_b        -54640.7646512102
k2_a        194674.147413486
k2_b        -70718.1386986521
kco_a        -1.81845739744211
kco_b        -23518.1117376316
kco2_a        -1.95039686557898
kco2_b        15779.9670841516
kh2_a        -0.851175550051731
kh2_b        -780.551417096644
求助!这个程序错在哪里?1stopt运行不了
c1.jpg


求助!这个程序错在哪里?1stopt运行不了-1
c2.jpg

7楼2013-09-11 11:52:01
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

727786917

铜虫 (小有名气)

【答案】应助回帖

★ ★
感谢参与,应助指数 +1
jjdg: 金币+1, 感谢参与 2013-09-13 00:34:19
琚裕波: 金币+1 2013-09-15 09:39:04
用未注册的1.0版可以运行,但用注册版1.0和1.5都不行
天道酬勤
9楼2013-09-12 22:03:36
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通回帖

dingd

铁杆木虫 (职业作家)

【答案】应助回帖


感谢参与,应助指数 +1
jjdg: 金币+1, 感谢参与 2013-09-11 00:50:34
1:没见你的数据;
2:用的哪个版本啊?网上1.5的处理这种编程模式估计有问题。
2楼2013-09-10 20:55:30
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

jjdg

版主 (知名作家)

优秀版主

【答案】应助回帖


感谢参与,应助指数 +1
ben_ladeng: 金币+1, 谢谢指教 2013-09-21 22:14:41
不完整的代码
你做kinetic可以去下个kinetica5.1来试试
努力学习!以正当途径!获得需要的知识!
3楼2013-09-11 00:51:51
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

琚裕波

金虫 (小有名气)

引用回帖:
3楼: Originally posted by jjdg at 2013-09-11 00:51:51
不完整的代码
你做kinetic可以去下个kinetica5.1来试试

用未注册的1.0版可以运行,但用注册版1.0和1.5都不行
一切都会向着最好的方向发展!
4楼2013-09-11 10:31:04
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

琚裕波

金虫 (小有名气)

引用回帖:
2楼: Originally posted by dingd at 2013-09-10 20:55:30
1:没见你的数据;
2:用的哪个版本啊?网上1.5的处理这种编程模式估计有问题。

Title "Kinetics";
Parameters k1_a,k1_b,k2_a,k2_b,KCO_a,KCO_b,KCO2_a,KCO2_b,KH2_a,KH2_b;  //需要拟合的参数
Variable TT,PP,Nin,yH2in,yCOin,yCO2in,yN2in,yN2out;                    //输入数据
Variable y1[Output],y2[Output];                                        //对比数据
StartProgram [VB];
Dim iter As Integer
dim TBA As Double
dim RCO As Double
dim RCO2 As Double
Dim KT1 As Double
dim KF1 As Double
dim KT2 As Double
dim KF2 As Double
dim KH2 As Double
dim KCO As Double
dim KCO2 As Double
Dim T As Double
dim P_Ca As Double
Dim fH2 As Double
dim fCO2 As Double
dim fCO As Double
dim fM As Double
dim fH2O As Double
Dim Beta1 As Double
dim Beta2 As Double
dim Nt as double
dim yCO as double
dim yCO2 as double
for iter=0 to Datalength-1
    TBA=503.2               //实验平均温度
    T=TT(iter)+273.15
    P_Ca=PP(iter)/0.101325
    //反应平衡常数计算
    KF1=Exp(13.1652+9203.26/T-5.92839*Ln(T)-0.00352404*T+0.0000102264*T*T-0.00000000769446*T^3+2.38583E-12*T^4)*(0.101325^(-2))
    KF2=Exp(1.6654+4553.34/T-2.72613*Ln(T)-0.01422914*T+0.000017206*T*T-0.00000001106294*T^3+3.19698E-12*T^4)*(0.101325^(-2))
    //逸度系数计算
    fH2=PP(iter)*yH2in(iter)*Exp((0.110785+35.3324/T-5005.47/(T*T*T)-19.6109*yH2in(iter)/T-20.9799*yH2in(iter)*yH2in(iter)/T)*P_Ca/T)
    fCO2=PP(iter)*yCO2in(iter)*Exp((-0.343605+428.452/T-69217700/(T*T*T)-327.402*yCO2in(iter)/T-374.954*yCO2in(iter)*yCO2in(iter)/T)*P_Ca/T)
    fCO=PP(iter)*yCOin(iter)*Exp((-0.093261+189.156/T-399940/(T*T*T)-181.527*yCOin(iter)/T+140.001*yCOin(iter)*yCOin(iter)/T)*P_Ca/T)
    Beta1=fM/(KF1*fCO*fH2^2)
    Beta2=fM*fH2O/(KF2*fCO2*fH2^3)
    //吸附平衡常数计算
    KCO=Exp(KCO_a+KCO_b*(1/T-1/TBA))
    KCO2=Exp(KCO2_a+KCO2_b*(1/T-1/TBA))
    KH2=Exp(KH2_a+KH2_b*(1/T-1/TBA))
    //反应速率常数计算
    KT1=k1_a*Exp(k1_b/8.314/T)
    KT2=k2_a*Exp(k2_b/8.314/T)
    //反应速率计算
    RCO=KT1*fCO*(fH2^2)*(1-Beta1)/((1+KCO*fCO+KCO2*fCO2+KH2*fH2)^3)
    RCO2=KT2*fCO2*(fH2^3)*(1-Beta2)/((1+KCO*fCO+KCO2*fCO2+KH2*fH2)^4)
    //通过反应速率计算出口CO和CO2组成,其中1.9108为催化剂质量
    Nt=Nin(iter)*yN2in(iter)/yN2out(iter)
    yCO=(Nin(iter)*yCOin(iter)-RCO*1.9108)/Nt
    yCO2=(Nin(iter)*yCO2in(iter)-RCO2*1.9108)/Nt
    //计算值与输入值进行对比
    y1(iter)=yCO
    y2(iter)=yCO2
Next
EndProgram;
Data;

{实验数据,顺序与前面定义的输入数据+对比数据的顺序一一对应
例如:
输入数据分别为:温度、压力、入口摩尔流量、入口组成(H2,CO,CO2,N2)、出口N2组成
对比数据分别为:出口CO组成、出口CO2组成
以下数据分别为:温度、压力、入口摩尔流量、入口组成(H2,CO,CO2,N2)、出口N2组成,出口CO组成、出口CO2组成
}
201.3        8        0.68        0.7166        0.0998        0.1052        0.0784        0.083        0.0844        0.1034
215.6        8        0.602        0.7397        0.0862        0.0925        0.0816        0.0894        0.0592        0.0888
229.2        8.1        0.772        0.734        0.1028        0.0836        0.0796        0.0932        0.0581        0.0744
244.4        8.1        0.728        0.7229        0.1052        0.0866        0.0853        0.0992        0.064        0.0777
260.7        7.8        0.723        0.7831        0.0723        0.0622        0.0824        0.0899        0.0467        0.0547
199.3        7.1        0.695        0.7397        0.0862        0.0925        0.0816        0.0852        0.0743        0.0901
215        7.1        0.689        0.734        0.1028        0.0836        0.0796        0.0864        0.0772        0.0822
229.8        7.1        0.707        0.7229        0.1052        0.0866        0.0853        0.0986        0.062        0.0817
244.8        7.1        0.722        0.7831        0.0723        0.0622        0.0824        0.09        0.044        0.0564
259.7        7        0.695        0.7166        0.0998        0.1052        0.0784        0.0856        0.0735        0.1044
200.4        6.2        0.738        0.734        0.1028        0.0836        0.0796        0.0831        0.0907        0.0823
215.7        6        0.629        0.7229        0.1052        0.0866        0.0853        0.092        0.0801        0.087
230        6.1        0.697        0.7831        0.0723        0.0622        0.0824        0.09        0.0431        0.0576
245.2        6        0.981        0.7166        0.0998        0.1052        0.0784        0.0865        0.0717        0.1031
260.3        6.1        0.972        0.7397        0.0862        0.0925        0.0816        0.0862        0.0684        0.092
200.1        5        0.704        0.7229        0.1052        0.0866        0.0853        0.0879        0.0962        0.0862
215        5        0.655        0.7831        0.0723        0.0622        0.0824        0.086        0.0578        0.0611
229.5        5        0.765        0.7166        0.0998        0.1052        0.0784        0.0857        0.0711        0.1063
244.6        5        0.739        0.7397        0.0862        0.0925        0.0816        0.0879        0.0624        0.0914
259.8        5        0.648        0.734        0.1028        0.0836        0.0796        0.0841        0.0841        0.0841
一切都会向着最好的方向发展!
5楼2013-09-11 10:31:39
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

琚裕波

金虫 (小有名气)

内容已删除
一切都会向着最好的方向发展!
6楼2013-09-11 11:16:52
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

琚裕波

金虫 (小有名气)

引用回帖:
7楼: Originally posted by dingd at 2013-09-11 11:52:01
1.5破解版不行,5.0正版运行没问题,不用任何修改。

不知道你的参数有无范围限制,有无过拟合现象。

均方差(RMSE):0.00320856901844522
残差平方和(SSE):0.00041179660584506
相关系数(R): 0.9991473986190 ...

恩,谢谢,你是用哪种算法算的?我用1.0未注册版可以运行,但和你的数据出入挺大的。
一切都会向着最好的方向发展!
8楼2013-09-11 16:04:15
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lipenggg

专家顾问 (正式写手)

我的1.5可以
一团和气
10楼2015-06-26 16:23:31
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 阿里巴巴国际站 的主题更新
信息提示
请填处理意见