MATLAB爱好者论坛-LabFans.com

MATLAB爱好者论坛-LabFans.com (https://www.labfans.com/bbs/index.php)
-   MATLAB论坛 (https://www.labfans.com/bbs/forumdisplay.php?f=6)
-   -   [MATLAB数学相关] 非线性多元拟合如何处理? (https://www.labfans.com/bbs/showthread.php?t=9716)

ZhangJing 2009-09-20 10:48

非线性多元拟合如何处理?
 
大家好,有人会用matlab拟合形如z^n=a*x^n+b*y^n的函数吗?其中x,y自变量,z为因变量,需要求出a,b,n.非常感谢
x =

1.0e+004 *

0.67273600000000 0.86934800000000 1.10699500000000 1.38642100000000


y =

1.0e+002 *

3.88190000000000 4.35810000000000 4.63660000000000 4.63690000000000

z=
1.0e+003 *

3.85808000000000 5.72277000000000 7.20761000000000 9.20183000000000

slgu 2009-09-20 11:21

回复: 非线性多元拟合如何处理?
 
[a,b,n]=[2.02396049435*10^(-21), -9.44385318022, 17.5236846095]
不知能否有用?

ZhangJing 2009-09-20 11:27

回复: 非线性多元拟合如何处理?
 
因为是一系列同样的问题,所以能告诉我怎么得到这些参数吗?谢谢

slgu 2009-09-20 15:02

回复: 非线性多元拟合如何处理?
 
这可以认为是做成z=(a*x.^n+b*y.^n).^(1/n)拟合的问题。获得其中的参数[a b n],用lsqcurevefit 或 nlinfit 进行拟合。他们需要提供合适的初值。如果类似数据,可以用我的结果作为初值试试。


所有时间均为北京时间。现在的时间是 03:23

Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.