Êýѧ½¨Ä£Ê¹ÓÃMATLAB½øÐÐÊý¾ÝÄâºÏ ÏÂÔØ±¾ÎÄ

ÄÚÈÝ·¢²¼¸üÐÂʱ¼ä : 2025/4/21 13:30:52ÐÇÆÚÒ» ÏÂÃæÊÇÎÄÕµÄÈ«²¿ÄÚÈÝÇëÈÏÕæÔĶÁ¡£

1.ÏßÐÔ×îС¶þ³Ë·¨

x=[19 25 31 38 44]';

y=[19.0 32.3 49.0 73.3 97.8]'; r=[ones(5,1),x.^2];

ab=r\\y % if AB=C then B=A\\C x0=19:0.1:44;

y0=ab(1)+ab(2)*x0.^2; plot(x,y,'o',x0,y0,'r') ÔËÐнá¹û£º

2.¶àÏîʽÄâºÏ·½·¨

x0=[1990 1991 1992 1993 1994 1995 1996]; y0=[70 122 144 152 174 196 202]; a=polyfit(x0,y0,1) y97=polyval(a,1997) x1=1990:0.1:1997; y1=a(1)*x1+a(2);

plot(x1,y1) holdon

plot(x0,y0,'*') plot(1997,y97,'o')

3.×îС¶þ³ËÓÅ»¯ 3.1 lsqlinº¯Êý

ÀýËÄ£º

x=[19 25 31 38 44]';

y=[19.0 32.3 49.0 73.3 97.8]'; r=[ones(5,1),x.^2]; ab=lsqlin(r,y) x0=19:0.1:44;

y0=ab(1)+ab(2)*x0.^2; plot(x,y,'o',x0,y0,'r')

3.2 lsqcurvefitº¯Êý

£¨1£©¶¨Ò庯Êý

function f=fun1(x,tdata);

f=x(1)+x(2)*exp(-0.02*x(3)*tdata); %ÆäÖÐx(1)=a£¬x(2)=b£¬x(3)=k £¨2£©

td=100:100:1000;

cd=[4.54 4.99 5.35 5.65 5.90 6.10 6.26 6.39 6.50 6.59]; x0=[0.2 0.05 0.05];

x=lsqcurvefit(@fun1,x0,td,cd) %x(1)=a£¬x(2)=b£¬x(3)=k t=100:10:1000;

c=x(1)+x(2)*exp(-0.02*x(3)*t); plot(t,c) holdon

plot(td,cd,'*')