clear all; close all; % nonlinear curve fit x=[1 2 3 4 5 6 7 8 9 10]; y=[10 13 15 14 11 9 7 8 10 13]; % A sin(Bx+C) + D %coeff=fminsearch('sinfit',[5 pi/5 -pi/5 10.5]); coeff=fminsearch('sinfit',[5 10 -pi/5 10.5]); A=coeff(1); B=coeff(2); C=coeff(3); D=coeff(4); xfit=1:0.1:10; yfit=A*sin(B*xfit+C)+D; plot(x,y,'ro',xfit,yfit,'k') % e2 error format long e E=sqrt( sum( (A*sin(B*x+C)+D-y).^2 )/length(x) )