所以我有这个数据将浓度与速率相关联
cAo = {0.1, 0.2, 0.1, 0.2, 0.05, 0.2}(*M*);
cBo = {0.1, 0.1, 0.2, 0.2, 0.2, 0.05}(*M*);
r = {.0000246, .0000483, .0000501, .0001003, 0000239, .0000262}(*M/s*);
我还以
的形式给出了一个等式的等式k*(cAo^a)*(cBo^b)=r
因此,为了找到常数a,b和k,我使用了NonlinearModelFit
EQ1 = NonlinearModelFit[Data2, k*(cAo^a)*(cBo^b), {k, a, b}, {cAo, cBo}];
EQ1["BestFit"]
但由于某些原因,我不断收到对我没有任何意义的错误General::ivar: "{0.1,0.2,0.1,0.2,0.05,0.2} is not a valid variable."
。
提前致谢
答案 0 :(得分:0)
一种方法是这样的:
NMinimize[Total[(k*(cAo^a)*(cBo^b)-r)^2],{a,b,k}]
注意我此时无法尝试此操作。我怀疑你可能需要添加约束,例如:
NMinimize[{Total[(k*(cAo^a)*(cBo^b)-r)^2],{a>0,b>0,k>0}},{a,b,k}]