function x=manualbeam(M,guess) x=lsqcurvefit(@gsbeam,guess,M(:,2),M(:,3)-M(:,4)); figure hold grid on xlabel('Stage Translation (mm)') ylabel('Photodetector Output (V)') text(0.8,0.2,['A = ' num2str(x(1))],'FontSize',12,'Interpreter','none','Units','normalized'); text(0.8,0.15,['x0 = ' num2str(x(2))],'FontSize',12,'Interpreter','none','Units','normalized'); text(0.8,0.1,['w = ' num2str(x(3))],'FontSize',12,'Interpreter','none','Units','normalized'); title('Gaussian Fit to Beam Data: Fit Curves and Data') xp=min(M(:,2)-1):.1:(max(M(:,2)+1)); yp=gsbeam(x,xp); plot(xp,yp,'Color',[1 0 0]); scatter(M(:,2),(M(:,3)-M(:,4))) orient landscape hold