Page 99 % make an m-file, delayFcn0.m: % function y=delayFcn0(t) % y = exp(t/10); N=10; % # steps per unit interval delT=1/N; % so delta t=0.1 % t is now linked to index i by t=-1+(i-1)*delT % set init. val's via delay fcn f0 for i=1:N+1 t=-1+(i-1)*delT; f(i)=delayFcn0(t); end % work from t=0 in steps of delT % ending time tfinal = 2, ending index is n % solve tfinal=-1+(n-1)*delT for n n=(2+1)*N+1; for i=N+1:n-1 t=-1+(i-1)*delT; delY=f(i-N)*delT; %N back=delay of 1 f(i+1)=f(i)+delY; % Eulers method end t=-1:delT:2; plot(t,f); Page 101 % leastsquare for r in y=A*exp(rt) A=2; t=[1 2 3]; % time data y=[3 5 9]; % corresponding y data lny=log(y)-log(A); % map to log and subtract bias M=t'; % set up indep. variables M matrix r=M\(lny') % and solve Page 102 tt=[1790:10:1990]; pop=[3.929214 5.308483 7.239881 9.638453... 12.866020 17.069453 23.191876 31.433321... 39.818449 50.155783 62.947714 75.994575... 91.972266 105.710620 122.775046... 131.669275 151.325798 179.323175... 203.302031 226.545805 248.709873]; plot(tt,pop,'o'); stt=0:10:200; % translated time Page 103 lnPop=log(pop); plot(stt,lnPop,'o') Page 104 MT=[stt; ones(1,21)]; params=MT'\(lnPop') lnFit=params(2)+params(1)*stt plot(stt,exp(lnFit)) hold on plot(stt,pop,'o') Exercises/Experiments 2. yrs=[9,19,29,39,49,59,69,79,89]; DR=[.3,1.5, 1.9, 2.9, 6.5, 16.5,37, 83.5, 181.9]; plot(yrs,DR);% so data exp. like lnDR= log(DR); MT=[yrs;ones(size(yrs))]; % matrix of independent variable data params=MT'\lnDR'; a=params(1); b=params(2); fit=exp(b)*exp(a*yrs); plot(yrs,DR,yrs,fit);