急!!!matlab指数拟合,模型已知,但是不知道怎么求系数

函数为y=a*P^b*GDP^c*T^d*W^e已知:>> yg=[0.1615655 0.01390168 0.11008178 0.167619304 0.172319504 0.286318216 0.315441873 0.240569671 0.004429238 -0.20144358 -0.215419542 0.971084292 0.79206031 0.375713556 0.072684928 -0.364181921 -1.206916424 -1.58574182]; P=[9127 9086 9165 9236 9326 9432 9574 9734 9936 10122 10455 10615 10770 10920 11053 11143 11205 11248];>> GDP=[11960.67 13320.11 14698.12 16907.03 20176.47 23631.32 26805.87 30937.68 35414.69 38053.72 43971.54 50313.67 54290.64 58193.54 60657.76 62475.68 67598.72 71780.08];>> T=[1827238 2262858 2635406 3141551 4772969 5506842 7717979 9713288 2336321 2811637 3532510 5342499 6512977 7458413 8169778 8825591 9134592 8611953];>> W=[36.2 49 46.5 39 40.8 44.3 45.9 47.3 46.2 43.7 39 43.8 44.9 47.2 47.5 52.9 57.5 58.8]; 怎么求系数a、b、c、d、e啊求助!!!!!

题主的指数拟合模型y=a*P^b*GDP^c*T^d*W^e,可以用matlab的lsqcurvefit非线性最小二乘法函数求解其拟合系数a、b、c、d、e。由于数据样本有点偏差(离散),严重依赖a、b、c、d、e的初值,经多次拟合得到相对较好的值,a=-1.603e-27,b=-2.6004,c=2.0349,d=0.74572,e=12.7048
求解主要代码:
x=[P' GDP' T' W']; %数据
k0=[...] %初值
[k,resnorm]= lsqcurvefit(@(k,x)nh_fun(k,x),k0,x,yg);
nh_fun(k,x) %指数拟合模型函数

温馨提示:答案为网友推荐,仅供参考
相似回答