0001 function z = gauss2D_fit2(par,X, LB, UB)
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020 if(nargin>2)
0021 par(par<LB) = LB(par<LB);
0022 par(par>UB) = UB(par>UB);
0023 end
0024
0025
0026 lenAz = X(1);
0027 X(1) = [];
0028 lenLocs = length(X)/2;
0029
0030 x = X(1:lenAz);
0031 y = X(lenAz+1:lenLocs);
0032 indFit = X(lenLocs+1:length(X));
0033
0034 xall = [x; zeros(size(y))];
0035 yall = [zeros(size(x)); y];
0036
0037 x_slant =par(6)*xall;
0038 y_slant =par(7)*yall;
0039
0040
0041 z=par(1)*(exp(-0.5*(xall-par(2)).^2./(par(3)^2)-0.5*(yall-par(4)).^2./(par(5)^2))) + x_slant + y_slant + par(8);
0042
0043 z(~indFit) = [];
0044
0045 end
0046