|
|
[ÇóÖú]
matlabÇúÏßÄâºÏ¹ý¶ËµãÇóÄâºÏº¯Êý£¬ÐÂÊÖÇó Ö¸µ¼
±¾ÈËÐÂÊÖ£¬×öÂÛÎļ±ÐèÄâºÏÏÂÃæÁ½×éÊý¾ÝµÄº¯Êý£¬Å¼º¯Êý£¬º¯ÊýΪҪÇó¹ýtdataµÄÁ½¸ö¶Ëµã£¬¼´A [23.8188 0]ºÍB [0 -15.654]Á½µã£¬ÇÒÔÚAµãÒ»½×µ¼ÊýΪÕýÎÞÇ¼´´¹Ö±ÓÚxÖ᣻BµãÒ»½×µ¼ÊýΪ0£¬¼´´¹Ö±ÓÚyÖ᣻
![matlabÇúÏßÄâºÏ¹ý¶ËµãÇóÄâºÏº¯Êý£¬ÐÂÊÖÇó Ö¸µ¼]()
ÏÂÃæÎÒÊÇ×öµÄ·ÇÏßÐÔÄâºÏ£¬²»ÖªµÀÔõô×ö²Å¹ý¶ËµãÇÒÂú×ã¶ËµãµÄµ¼Êý£¿£¿¿ÒÇó°ïÖúÖ¸µ¼
º¯ÊýÎļþcurvefun1.m
unction f=curvefun1(x,tdata)
% f=x(1)+x(2)*exp(-0.02*x(3)*tdata).^2+x(4)*tdata.^2
f=x(1)+x(2)*exp(x(3)*tdata.^2)+x(4)*exp(x(5)*tdata.^2)+x(6)*tdata.^2%f=A+BEXP(C*X^2)+D*EXP(E*X^2)+F*x^2
ÏÂÃæÊǼÆËãÊý¾Ý[tdata y]
%%°´ÕÕÖ±½Ç×ø±êÄâºÏ
tdata=[23.8188
23.8342
23.7987
23.7929
23.8527
23.7062
23.6544
23.5103
23.2279
23.0524
23.0524
22.4726
22.3073
21.9304
21.621
21.1967
20.9019
20.6114
20.2232
19.7369
19.3375
19.1869
18.6443
17.8836
17.2772
17.1087
16.5737
16.0344
15.7027
15.0864
14.7988
14.5615
14.0628
13.4977
13.3248
12.8461
12.393
12.1607
11.9807
11.5081
11.2076
10.9033
10.822
10.2442
9.6234
9.5353
8.9276
8.2954
8.155
7.4794
7.0256
6.6483
6.3191
5.6674
4.9366
4.9366
4.7496
4.1897
3.7401
3.3996
3.1933
2.9862
2.4351
2.1442
1.3893
1.374
0.6974
0.1026
0
];
y=[0
-0.3221
-1.1519
-2.0705
-3.0347
-3.2926
-3.9812
-4.8063
-6.0083
-6.6225
-6.6225
-8.043
-8.3916
-8.9705
-9.5804
-10.1079
-10.538
-10.8858
-11.3962
-11.8158
-12.3589
-12.4146
-13.0249
-13.685
-14.1091
-14.155
-14.4614
-14.8013
-14.9063
-15.2473
-15.2502
-15.4975
-15.7695
-15.9686
-15.9417
-16.0339
-16.1741
-16.1872
-16.2183
-16.2189
-16.275
-16.2563
-16.2056
-16.2188
-16.1824
-16.2529
-16.2532
-16.2354
-16.1712
-16.2036
-16.2777
-16.2136
-16.1762
-16.1061
-16.0701
-16.0701
-16.1101
-16.079
-15.9136
-15.9923
-15.9638
-15.9691
-15.9098
-15.8816
-15.8233
-15.9487
-15.8259
-15.7887
-15.654
];
x0=[0.2,0,0,0.0005,0.005,-1];
x=lsqcurvefit(\'curvefun1\',x0,tdata,y)
f=curvefun1(x,tdata);
m=f-y0
plot(tdata,y,\'o\',tdata,f,\'r\'); |
|