心累!关于参数拟合的问题
mathematica吧
全部回复
仅看楼主
level 1
关于带误差的实验数据,根据模型进行参数拟合,如果模型参数是线性的(model1)就可以得到结果,如果参数是非线性的(model2)就会报错。
求解啊求解
代码如下:
data={{1,Around[5.,{0.3829020540280492,0.9823444252245808}]},{2,Around[7.,{0.
13859288931
953695,0.5062829286140218}]},{3,Around[9.,{0.6690553792750409,0.5611636477117092}]},{4,Around[11.,{0.09811685036353879,0.31
15323565071
908}]},{5,Around[13.,{0.8971600591178541,0.3276282509045023}]},{6,Around[15.,{0.10957197596386714,0.4900422248350298}]}};
model1=a x+b;
model2=a^2 x+b;
fit1=NonlinearModelFit[data,model1,{a,b},x];
fit1["BestFitParameters"]
fit2=NonlinearModelFit[data,model2,{a,b},x];
fit2["BestFitParameters"]
2023年11月07日 07点11分 1
吧务
level 15
第一个结果都不一定可靠,NonlinearModelFit疑似只支持对称误差的拟合。参:
resources.wolframcloud.com/FunctionRepository/resources/FitWithErrors/
你要是把那堆Around里的误差全弄成对称的,NonlinearModelFit就不会报错了。
2023年12月02日 05点12分 2
1