## gaussfitn

version 1.1.2 (3.08 KB) by
Fit N-dimensional scattered points with Gaussian+constant

Updated 11 Aug 2022

This function uses lsqcurvefit to fit parameters D, A, mu, sig to the R^N-->R
Gaussian+constant model function,
z(x) = D + A*exp( -0.5 * (x-mu).' * inv(sig) *(x-mu) )
Here A and D are unknown scalars, mu is an unknown Nx1 mean vector, and sig is an
unknown NxN covariance matrix. By imposing lower and upper bounds 0<=D<=0 (see below), this can also be used to perform pure Gaussian fitting.
SYNTAX:
[params,resnorm, residual,exitflag,output] = gaussfitn(xdata,zdata,params0,LB,UB,Name,Value)
INPUTS (required):
xdata: MxN matrix whose rows specify M scattered samples in R^N
zdata: Mx1 vector of corresponding samples z(xdata)
INPUTS (optional)
params0: Cell array of initial parameter estimates {D0,A0,mu0,sig0}.
Can also be empty [] in which case default initial guesses
are autogenerated. Can also consist of cell array of empty
and non-empty elements like {D0,[],mu0,[]} in which case
default initial guesses are generated for select parameters.
LB: Cell array of lower bounds {D_LB, A_LB, mu_LB} on D, A, and mu.
UB: Cell array of upper bounds {D_UB, A_UB, mu_UB} on D, A, and mu.
Name,Value: Name/Value option pairs compatible with lsqcurvefit. See,
<https://www.mathworks.com/help/optim/ug/lsqcurvefit.html#buuhcjo-options>.
over-ridden.
OUTPUTS:
params: Final estimate of the parameters as a cell array {D,A,mu,sig}
resnorm: As in lsqcurvefit
residual: As in lsqcurvefit
exitflag: As in lsqcurvefit
output: As in lsqcurvefit

### Cite As

Matt J (2022). gaussfitn (https://www.mathworks.com/matlabcentral/fileexchange/69116-gaussfitn), MATLAB Central File Exchange. Retrieved .

##### MATLAB Release Compatibility
Created with R2018a
Compatible with R2016b and later releases
##### Platform Compatibility
Windows macOS Linux