本帖最后由 空空是不空空 于 2022-6-19 08:44 编辑 x= 1426.61084568306 1557.34510513090 1702.94864803137 1867.09692724308 2010.00412126521 2154.01362132604 2314.29471571415 2490.21062292600 2647.41860049626 2804.96511308839 2926.42778065750 3104.25742218513 3281.28436653587 3441.56558095757 3622.14070500265 3799.82681375898 3995.21579576998 4171.79140070454 4359.79665543550 4501.89866256511 y= 0.00110132676234799 0.00110278644102936 0.00106024972376629 0.00106197677917478 0.00103646965074234 0.00100962727705056 0.000982613106536824 0.000964352457523288 0.000948496151450424 0.000920634239097866 0.000917279438504015 0.000920965806573972 0.000908228805806111 0.000894623122504436 0.000887950313763300 0.000887456894569732 0.000874354541901629 0.000861576181405633 0.000863336531947576 0.000857042266151787 用matlab自带的app-Curve Fitting Tool拟合方程 已知参数b∈(0,1),a,b>0一开始我并没有设置参数上下界,拟合精度是比较高的,设置以后精度略有下降,这是什么原因导致的呢? 未设置边界时,a,b,c∈(-∞,+∞)如文末图1 未设置参数时 ![]()
设置参数后就不收敛了 ![]() 事实上上面的算法都是随便选的,只能选这个,别的不收敛。。。而且c只能设置成(-inf,inf),要是设置成(0,inf)的话就是一条直线,不知道为何。 疑问:为什么设置参数范围后参数会发生改变,甚至不收敛?我还应该设置参数范围吗?如果设置应该设置多大? |
最佳答案
6 条回复