求一个MATLAB程序:要求用MATLAB 幂函数拟合方程 Y=A(X-h)^M;求程序以及A、h、M的值。

X=[1360.49 1360.12 1357.90 1355.36 1352.81 1349.84 1346.81 1343.73 1340.47
1336.92 1333.44 1329.80 1326.19 1322.51 1318.63 1314.66 1310.61 1306.60 1302.751298.50 1294.44 1290.34 ]
Y=[9.80 9.65 9.52 9.39 9.26 9.13 9.00 8.87 8.73 8.60 8.47 8.34 8.21 8.08 7.95 7.82 7.69
7.56 7.43 7.30 7.17 7.04 ]

解决方法:

1、给出拟合数据

x=[。。。];y=[。。。];

2、自定义函数  func(a,x)

func=@(a,x)a(1).*(x-a(2)).^a(3);

3、用nlinfit()函数,去拟合系数A、h、M

4、用plot()函数,去绘制拟合数据的散点图和拟合函数的图形

运行结果及代码

温馨提示:答案为网友推荐,仅供参考
第1个回答  2017-05-26
[N,M]=size(A);a=0;forn=1:Nform=1:Ma=a+A(n,m);endend
相似回答