注册 登录
编程论坛 Matlab

求救,各位大侠!

ganyu1986312 发布于 2008-09-20 19:03, 665 次点击
小弟编了一个程序,不过运行不出来,大家帮我看看是哪里出错了啊?

function yy=modelA(beta0,X)
          a=beta0(1);
          b=beta0(2);
          c=beta0(3);
          d=beta0(4);
          x1=X(:,1);
          x2=X(:,2);
          x3=X(:,3);
          x4=X(:,4);

X=[1 11345    8.5491e+006    2.9039e+006
   1 13211    1.1048e+006    1.086e+006
   1 5405    1.8022e+005    1.7436e+005
   1 2321.7    13395        13395
   1 7065.4    1.0538e+006    1.0164e+006
   1 8119.5    1.1806e+006    1.1057e+006
   1 9978.1    9.637e+005    9.1287e+005
   1 9163.2    3.474e+006    3.1845e+006
   1 11471    2.7904e+006    2.6752e+006
   1 19719    1.1219e+006    1.0796e+006
   1 23636    1.0319e+006    9.9259e+005
   1 9703.8    6.2497e+005    5.3039e+005
   1 8303.7    1.2294e+006    1.1015e+006
   1 7617.1    2.9071e+006    2.8275e+006
   1 6204    8.9299e+005    8.7078e+005
   1 13361    1.634e+006    1.5823e+006
   1 6071.3    6.8781e+005    6.2794e+005
   1 6875.9    1.6384e+006    1.5595e+006
   1 9170.1    2.1791e+006    2.0892e+006
   1 7781.2    3.9413e+005    3.748e+005
   1 11374    84795        84795];
Y=[6620.6
   2152.3
   4743
   4021.3
   4346
   3589.2
   2889
   4862.7
   4119.9
   1906.2
   3837.1
   2608
   3020.5
   35026
   3915.8
   7296
   5779.9
   4488.7
   4367.3
   4855.1
   3454.2];
yy=a*x1+b*x2+c*x3+d*x4;
          beta0=[8138.5 0.12 -0.012 -0.06];
          betafit=nlinfit(X,Y,'model',beta0)
1 回复
#2
hitzhang2008-09-23 22:00
function yy=modelA(beta0,X)
          a=beta0(1);
          b=beta0(2);
          c=beta0(3);
          d=beta0(4);
          x1=X(:,1);
          x2=X(:,2);
          x3=X(:,3);
          x4=X(:,4);
          yy=a*x1+b*x2+c*x3+d*x4;
!-----------------------------------------------



>>
X=[1 11345    8.5491e+006    2.9039e+006
   1 13211    1.1048e+006    1.086e+006
   1 5405    1.8022e+005    1.7436e+005
   1 2321.7    13395        13395
   1 7065.4    1.0538e+006    1.0164e+006
   1 8119.5    1.1806e+006    1.1057e+006
   1 9978.1    9.637e+005    9.1287e+005
   1 9163.2    3.474e+006    3.1845e+006
   1 11471    2.7904e+006    2.6752e+006
   1 19719    1.1219e+006    1.0796e+006
   1 23636    1.0319e+006    9.9259e+005
   1 9703.8    6.2497e+005    5.3039e+005
   1 8303.7    1.2294e+006    1.1015e+006
   1 7617.1    2.9071e+006    2.8275e+006
   1 6204    8.9299e+005    8.7078e+005
   1 13361    1.634e+006    1.5823e+006
   1 6071.3    6.8781e+005    6.2794e+005
   1 6875.9    1.6384e+006    1.5595e+006
   1 9170.1    2.1791e+006    2.0892e+006
   1 7781.2    3.9413e+005    3.748e+005
   1 11374    84795        84795];
Y=[6620.6
   2152.3
   4743
   4021.3
   4346
   3589.2
   2889
   4862.7
   4119.9
   1906.2
   3837.1
   2608
   3020.5
   35026
   3915.8
   7296
   5779.9
   4488.7
   4367.3
   4855.1
   3454.2];
>>beta0=[8138.5 0.12 -0.012 -0.06];
  betafit=nlinfit(X,Y,'modelA',beta0)
betafit =

  1.0e+003 *

    4.0589   -0.0003   -0.0000    0.0000
1